public class sun.jvmstat.perfdata.monitor.protocol.local.PerfDataBuffer extends sun.jvmstat.perfdata.monitor.AbstractPerfDataBuffer
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvmstat.perfdata.monitor.protocol.local.PerfDataBuffer
super_class: sun.jvmstat.perfdata.monitor.AbstractPerfDataBuffer
{
private static final jdk.internal.perf.Perf perf;
descriptor: Ljdk/internal/perf/Perf;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: .line 51
new jdk.internal.perf.Perf$GetPerfAction
dup
invokespecial jdk.internal.perf.Perf$GetPerfAction.<init>:()V
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast jdk.internal.perf.Perf
putstatic sun.jvmstat.perfdata.monitor.protocol.local.PerfDataBuffer.perf:Ljdk/internal/perf/Perf;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(sun.jvmstat.monitor.VmIdentifier);
descriptor: (Lsun/jvmstat/monitor/VmIdentifier;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=2
start local 0 // sun.jvmstat.perfdata.monitor.protocol.local.PerfDataBuffer this
start local 1 // sun.jvmstat.monitor.VmIdentifier vmid
0: .line 61
aload 0 /* this */
invokespecial sun.jvmstat.perfdata.monitor.AbstractPerfDataBuffer.<init>:()V
1: .line 64
getstatic sun.jvmstat.perfdata.monitor.protocol.local.PerfDataBuffer.perf:Ljdk/internal/perf/Perf;
aload 1 /* vmid */
invokevirtual sun.jvmstat.monitor.VmIdentifier.getLocalVmId:()I
aload 1 /* vmid */
invokevirtual sun.jvmstat.monitor.VmIdentifier.getMode:()Ljava/lang/String;
invokevirtual jdk.internal.perf.Perf.attach:(ILjava/lang/String;)Ljava/nio/ByteBuffer;
astore 2 /* bb */
start local 2 // java.nio.ByteBuffer bb
2: .line 65
aload 0 /* this */
aload 2 /* bb */
aload 1 /* vmid */
invokevirtual sun.jvmstat.monitor.VmIdentifier.getLocalVmId:()I
invokevirtual sun.jvmstat.perfdata.monitor.protocol.local.PerfDataBuffer.createPerfDataBuffer:(Ljava/nio/ByteBuffer;I)V
end local 2 // java.nio.ByteBuffer bb
3: .line 67
goto 29
StackMap locals: sun.jvmstat.perfdata.monitor.protocol.local.PerfDataBuffer sun.jvmstat.monitor.VmIdentifier
StackMap stack: java.lang.IllegalArgumentException
4: astore 2 /* e */
start local 2 // java.lang.IllegalArgumentException e
5: .line 70
new java.lang.StringBuilder
dup
invokestatic sun.jvmstat.perfdata.monitor.protocol.local.PerfDataFile.getTempDirectory:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
6: .line 71
ldc "hsperfdata_"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
7: .line 72
aload 1 /* vmid */
invokevirtual sun.jvmstat.monitor.VmIdentifier.getLocalVmId:()I
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
8: .line 70
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3 /* filename */
start local 3 // java.lang.String filename
9: .line 74
new java.io.File
dup
aload 3 /* filename */
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 4 /* f */
start local 4 // java.io.File f
10: .line 76
new java.io.RandomAccessFile
dup
aload 4 /* f */
ldc "r"
invokespecial java.io.RandomAccessFile.<init>:(Ljava/io/File;Ljava/lang/String;)V
invokevirtual java.io.RandomAccessFile.getChannel:()Ljava/nio/channels/FileChannel;
astore 5 /* fc */
start local 5 // java.nio.channels.FileChannel fc
11: .line 77
aload 5 /* fc */
getstatic java.nio.channels.FileChannel$MapMode.READ_ONLY:Ljava/nio/channels/FileChannel$MapMode;
lconst_0
12: .line 78
aload 5 /* fc */
invokevirtual java.nio.channels.FileChannel.size:()J
l2i
i2l
13: .line 77
invokevirtual java.nio.channels.FileChannel.map:(Ljava/nio/channels/FileChannel$MapMode;JJ)Ljava/nio/MappedByteBuffer;
astore 6 /* bb */
start local 6 // java.nio.ByteBuffer bb
14: .line 79
aload 5 /* fc */
invokevirtual java.nio.channels.FileChannel.close:()V
15: .line 80
aload 0 /* this */
aload 6 /* bb */
aload 1 /* vmid */
invokevirtual sun.jvmstat.monitor.VmIdentifier.getLocalVmId:()I
invokevirtual sun.jvmstat.perfdata.monitor.protocol.local.PerfDataBuffer.createPerfDataBuffer:(Ljava/nio/ByteBuffer;I)V
end local 6 // java.nio.ByteBuffer bb
end local 5 // java.nio.channels.FileChannel fc
end local 4 // java.io.File f
end local 3 // java.lang.String filename
16: .line 82
goto 29
StackMap locals: sun.jvmstat.perfdata.monitor.protocol.local.PerfDataBuffer sun.jvmstat.monitor.VmIdentifier java.lang.IllegalArgumentException
StackMap stack: java.io.FileNotFoundException
17: pop
18: .line 84
new sun.jvmstat.monitor.MonitorException
dup
new java.lang.StringBuilder
dup
aload 1 /* vmid */
invokevirtual sun.jvmstat.monitor.VmIdentifier.getLocalVmId:()I
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " not found"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
19: .line 85
aload 2 /* e */
20: .line 84
invokespecial sun.jvmstat.monitor.MonitorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
21: .line 86
StackMap locals:
StackMap stack: java.io.IOException
astore 3 /* e2 */
start local 3 // java.io.IOException e2
22: .line 87
new sun.jvmstat.monitor.MonitorException
dup
new java.lang.StringBuilder
dup
ldc "Could not map 1.4.1 file for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
23: .line 88
aload 1 /* vmid */
invokevirtual sun.jvmstat.monitor.VmIdentifier.getLocalVmId:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 3 /* e2 */
24: .line 87
invokespecial sun.jvmstat.monitor.MonitorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 // java.io.IOException e2
end local 2 // java.lang.IllegalArgumentException e
25: .line 90
StackMap locals: sun.jvmstat.perfdata.monitor.protocol.local.PerfDataBuffer sun.jvmstat.monitor.VmIdentifier
StackMap stack: java.io.IOException
astore 2 /* e */
start local 2 // java.io.IOException e
26: .line 91
new sun.jvmstat.monitor.MonitorException
dup
new java.lang.StringBuilder
dup
ldc "Could not attach to "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
27: .line 92
aload 1 /* vmid */
invokevirtual sun.jvmstat.monitor.VmIdentifier.getLocalVmId:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 2 /* e */
28: .line 91
invokespecial sun.jvmstat.monitor.MonitorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 // java.io.IOException e
29: .line 94
StackMap locals:
StackMap stack:
return
end local 1 // sun.jvmstat.monitor.VmIdentifier vmid
end local 0 // sun.jvmstat.perfdata.monitor.protocol.local.PerfDataBuffer this
LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lsun/jvmstat/perfdata/monitor/protocol/local/PerfDataBuffer;
0 30 1 vmid Lsun/jvmstat/monitor/VmIdentifier;
2 3 2 bb Ljava/nio/ByteBuffer;
5 25 2 e Ljava/lang/IllegalArgumentException;
9 16 3 filename Ljava/lang/String;
10 16 4 f Ljava/io/File;
11 16 5 fc Ljava/nio/channels/FileChannel;
14 16 6 bb Ljava/nio/ByteBuffer;
22 25 3 e2 Ljava/io/IOException;
26 29 2 e Ljava/io/IOException;
Exception table:
from to target type
1 3 4 Class java.lang.IllegalArgumentException
5 16 17 Class java.io.FileNotFoundException
5 16 21 Class java.io.IOException
1 3 25 Class java.io.IOException
Exceptions:
throws sun.jvmstat.monitor.MonitorException
MethodParameters:
Name Flags
vmid
}
SourceFile: "PerfDataBuffer.java"
InnerClasses:
public MapMode = java.nio.channels.FileChannel$MapMode of java.nio.channels.FileChannel
public GetPerfAction = jdk.internal.perf.Perf$GetPerfAction of jdk.internal.perf.Perf