JDK自带JVM分析工具详解 您所在的位置:网站首页 jdk参数配置详解 JDK自带JVM分析工具详解

JDK自带JVM分析工具详解

2023-09-14 04:44| 来源: 网络整理| 查看: 265

JDK自带JVM分析工具详解 1. JVM分析工具概述1.1 JVM分析工具简介1.2 JVM分析工具分类 2. JVM分析工具详解2.1 idea环境配置2.2 jps2.3 jinfo2.4 jvisualvm2.5 jconsole2.6 jstat2.7 jstack2.8 jcmd2.9 jmap

1. JVM分析工具概述 1.1 JVM分析工具简介

在日常应用开发过程中对JVM状态指标等健康状况的分析是必不可少的操作,尤其是在出现一些内存,GC,线程等问题,JVM分析工具能够很好的帮助我们定位分析问题,我们可以利用jdk自带的jvm分析工具进行分析,比如jps,jinfo,jvisualvm,jconsole,jstat,jstack,jcmd,jmap等。当然也可以采用很多优秀的开源jvm分析工具进行分析,Arthas等。

1.2 JVM分析工具分类

1.jdk自带工具路径:%JAVA_HOME%\jdk1.8.0_151\bin 在这里插入图片描述 2.常见jdk自带jvm分析工具

工具类型作用jps命令行jvm进程状态工具,列出系统上jvm进程的pidjinfo命令行jvm信息查看工具,查看jvm的各种配置信息jvisualvm图形界面jvm综合监控工具,查看jvm基本信息,堆,栈,转储,内存,cpu以及gc等信息jconsole图形界面jmx兼容的图形工具,用于监控jvm基本情况,查看MBeanjstat命令行jvm统计监控工具,附件到一个jvm进程上手机和记录jvm的各种性能指标数据jstack命令行jvm栈查看工具,可以查看jvm进程的线程和锁信息jcmd命令行jvm命令行调试工具,用于向jvm进程发送调试命令jmap命令行jvm堆内存分析工具,可以查看jvm进程对象直方图,类加载统计以及做堆转储操作 2. JVM分析工具详解 2.1 idea环境配置

启动10个死循环的线程,每个线程分配一个10MB左右的字符串,然后休眠10秒。

public class JvmUtilTest { /** * JVM测试 * 启动10个死循环的线程,每个线程分配一个10MB左右的字符串,然后休眠10秒。 */ @Test public void threadSleep() throws InterruptedException { System.out.println("线程启动,执行开始:" + DateUtil.date()); //启动10个线程 IntStream.rangeClosed(1, 10).mapToObj(i -> new Thread(() -> { while (true) { //每一个线程都是一个死循环,休眠10秒,打印10M数据 String payload = IntStream.rangeClosed(1, 10000000) .mapToObj(__ -> "a") .collect(Collectors.joining("")) + UUID.randomUUID().toString(); try { TimeUnit.SECONDS.sleep(10); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("第" + i + "线程分配字符串长度:" + payload.length()); } })).forEach(Thread::start); //主程序休眠1小时,用来测试 TimeUnit.HOURS.sleep(1); System.out.println("线程结束,执行完成:" + DateUtil.date()); } }

idea配置:Edit Configurations->VM Options -ea -Xms1g -Xmx1g -XX:ThreadStackSize=256k -XX:NativeMemoryTracking=detail 设置堆内存大小:-Xms1g -Xmx1g 开启JVM NMT: -XX:ThreadStackSize=256k -XX:NativeMemoryTracking=detail 在这里插入图片描述

2.2 jps

通过jps查看Java进程列表PID。可以看到JUnitStarter对应pid为21984

D:\software\Java\jdk1.8.0_151\bin>jps 21984 JUnitStarter 20724 Launcher 6148 Jps 8884 KotlinCompileDaemon 18700 2.3 jinfo

通过Java进程对应的pid,使用jinfo查看jvm各种配置信息。比如jdk版本,环境,路径,虚拟机名称,编码,堆栈等信息。VM Flags对应堆栈信息,-XX:InitialHeapSize=1073741824 -XX:MaxHeapSize=1073741824,初始化最大堆内存,刚好与前面设置的堆内存大小相符合1g。

D:\software\Java\jdk1.8.0_151\bin>jinfo 21984 Attaching to process ID 21984, please wait... Debugger attached successfully. Server compiler detected. JVM version is 25.151-b12 Java System Properties: java.runtime.name = Java(TM) SE Runtime Environment java.vm.version = 25.151-b12 sun.boot.library.path = D:\software\Java\jdk1.8.0_151\jre\bin java.vendor.url = http://java.oracle.com/ java.vm.vendor = Oracle Corporation path.separator = ; file.encoding.pkg = sun.io java.vm.name = Java HotSpot(TM) 64-Bit Server VM sun.os.patch.level = sun.java.launcher = SUN_STANDARD user.script = user.country = CN user.dir = D:\work\opencode\auto-market java.vm.specification.name = Java Virtual Machine Specification java.runtime.version = 1.8.0_151-b12 java.awt.graphicsenv = sun.awt.Win32GraphicsEnvironment os.arch = amd64 java.endorsed.dirs = D:\software\Java\jdk1.8.0_151\jre\lib\endorsed line.separator = java.io.tmpdir = C:\Users\1\AppData\Local\Temp\ java.vm.specification.vendor = Oracle Corporation user.variant = os.name = Windows 10 sun.jnu.encoding = GBK java.library.path = D:\software\Java\jdk1.8.0_151\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\ProgramData\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;"D:\software\Java\jdk1.8.0_151\bin;D:\software\Java\jdk1.8.0_151\jre\bin";D:\software\Git\cmd;D:\software\maven\apache-maven-3.6.1\bin;D:\tools\jmeter\apache-jmeter-5.4.1\lib\ext\ApacheJMeter_core.jar;D:\tools\jmeter\apache-jmeter-5.4.1\lib\jorphan.jar;D:\software\Graphviz2.38\bin;D:\software\nodejs\;D:\software\nodejs;C:\Users\1\AppData\Local\Microsoft\WindowsApps;;D:\software\Microsoft VS Code\bin;C:\Users\1\AppData\Roaming\npm;. jboss.modules.system.pkgs = com.intellij.rt java.specification.name = Java Platform API Specification java.class.version = 52.0 sun.management.compiler = HotSpot 64-Bit Tiered Compilers os.version = 10.0 user.home = C:\Users\1 user.timezone = Asia/Shanghai java.awt.printerjob = sun.awt.windows.WPrinterJob file.encoding = UTF-8 java.specification.version = 1.8 user.name = 1 java.class.path = D:\software\IntelliJ IDEA 2018.1.6\lib\idea_rt.jar;D:\software\Java\jdk1.8.0_151\jre\lib\jfr.jar;D:\software\Java\jdk1.8.0_151\jre\lib\jfxswt.jar;D:\software\maven\.m2\repository\org\springframework\spring-core\5.3.16\spring-core-5.3.16.jar; java.vm.specification.version = 1.8 sun.arch.data.model = 64 sun.java.command = com.intellij.rt.execution.junit.JUnitStarter -ideVersion5 -junit4 com.jerry.market.utils.JvmUtilTest,threadSleep java.home = D:\software\Java\jdk1.8.0_151\jre user.language = zh java.specification.vendor = Oracle Corporation awt.toolkit = sun.awt.windows.WToolkit java.vm.info = mixed mode java.version = 1.8.0_151 java.ext.dirs = D:\software\Java\jdk1.8.0_151\jre\lib\ext;C:\WINDOWS\Sun\Java\lib\ext sun.boot.class.path = D:\software\Java\jdk1.8.0_151\jre\lib\resources.jar;D:\software\Java\jdk1.8.0_151\jre\lib\rt.jar;D:\software\Java\jdk1.8.0_151\jre\lib\sunrsasign.jar;D:\software\Java\jdk1.8.0_151\jre\lib\jsse.jar;D:\software\Java\jdk1.8.0_151\jre\lib\jce.jar;D:\software\Java\jdk1.8.0_151\jre\lib\charsets.jar;D:\software\Java\jdk1.8.0_151\jre\lib\jfr.jar;D:\software\Java\jdk1.8.0_151\jre\classes;C:\Users\1\.IntelliJIdea2018.1\system\captureAgent\debugger-agent-storage.jar java.vendor = Oracle Corporation file.separator = \ java.vendor.url.bug = http://bugreport.sun.com/bugreport/ idea.test.cyclic.buffer.size = 1048576 sun.io.unicode.encoding = UnicodeLittle sun.cpu.endian = little sun.desktop = windows sun.cpu.isalist = amd64 VM Flags: Non-default VM flags: -XX:CICompilerCount=4 -XX:InitialHeapSize=1073741824 -XX:MaxHeapSize=1073741824 -XX:MaxNewSize=357564416 -XX:MinHeapDeltaBytes=524288 -XX:NativeMemoryTracking=null -XX:NewSize=357564416 -XX:OldSize=716177408 -XX:ThreadStackSize=262144 -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseFastUnorderedTimeStamps -XX:-UseLargePagesIndividualAllocation -XX:+UseParallelGC Command line: -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:62405,suspend=y,server=n -ea -Xms1g -Xmx1g -XX:ThreadStackSize=256k -XX:NativeMemoryTracking=detail -Didea.test.cyclic.buffer.size=1048576 -javaagent:C:\Users\1\.IntelliJIdea2018.1\system\captureAgent\debugger-agent.jar=file:/C:/Users/1/AppData/Local/Temp/capture9146.props -Dfile.encoding=UTF-8 2.4 jvisualvm

jvisualvm是一个综合监控工具,查看jvm基本信息,堆,栈,转储,内存,cpu以及gc等信息。

打开图形化界面,找到对应执行方法程序可以查看相关资源配置信息。 概述:Java进程PID,主机IP,主类,参数,jvm名称,版本,以及jvm参数与系统属性。 监视:CPU(使用情况,垃圾回收情况),内存(堆大小,堆使用大小),类(类装入卸载数量),线程(活动线程,守护线程数量) 线程:当前所有线程执行状态,主要包括开启了那些线程,线程运行,休眠,等待,驻留,监视等信息。 抽样器:CPU抽样(CPU样例与线程CPU时间)与内存抽样(堆柱状图与每个线程分配), Profiler:CPU与内存性能分析。 Visual GC:Spaces与Graphs,Spaces主要包括Metaspace,Old,Eden,S0,S1,Graphs实时分析。需要注意是这个需要以插件的形式安装,工具-插件-可用插件-选择VisualGC安装即可。

visualvm官网地址:https://visualvm.github.io/ xisualvm文档地址:https://visualvm.github.io/documentation.html visualvm插件下载地址:https://visualvm.github.io/pluginscenters.html

D:\software\Java\jdk1.8.0_151\bin>jvisualvm D:\software\Java\jdk1.8.0_151\bin> The launcher has determined that the parent process has a console and will reuse it for its own console output. Closing the console will result in termination of the running program. Use '--console suppress' to suppress console output. Use '--console new' to create a separate console window.

概述,可以看到堆栈信息以及系统参数等。 在这里插入图片描述 监视,可以看到jvmGC大概时间,每10秒回收一次与程序保持一致。我们可以在监视面板看到 JVM 的基本情况,也可以直接在这里进行手动 GC 和堆 Dump 操作。 在这里插入图片描述 线程,可以看到我们开启的线程状态,刚好开启10个线程与程序一致。 在这里插入图片描述 抽样器,可以看到内存或者CPU抽样状态。 在这里插入图片描述Profiler,内存或者CPU抽样性能分析。 在这里插入图片描述 Visual GC,垃圾收集器执行状态以及每个分区大小。 在这里插入图片描述

2.5 jconsole

jconsole如果希望看到各个内存区的 GC 曲线图,可以使用 jconsole 观察。jconsole 也是一个综合性图形界面监控工具,比 jvisualvm 更方便的一点是,可以用曲线的形式监控堆内存,线程,类,以及MBean 中的属性值。 打开jconsole,选择本地进程,测试程序JvmUtilTest

Microsoft Windows [版本 10.0.19044.1586] (c) Microsoft Corporation。保留所有权利。 D:\software\Java\jdk1.8.0_151\bin>jconsole

在这里插入图片描述

2.6 jstat

jstat工具以命令行的方式,允许以固定的监控频次输出 JVM 的各种监控指标,比如使用 -gcutil 输出 GC 和内存占用汇总信息,每隔 5 秒输出一次,输出 100 次,可以看到 Young GC 比较频繁,而 Full GC 基本 10 秒一次。 jstat 命令的参数众多,包含 -class、-compiler、-gc 等。Java 8、Linux/Unix 平台 jstat 工具的完整介绍,你可以查看这里。jstat 定时输出的特性,可以方便我们持续观察程序的各项指标。 参数说明:S0 表示 Survivor0 区占用百分比,S1 表示 Survivor1 区占用百分比,E 表示 Eden 区占用百分比,O 表示老年代占用百分比,M 表示元数据区占用百分比,YGC 表示年轻代回收次数,YGCT 表示年轻代回收耗时,FGC 表示老年代回收次数,FGCT 表示老年代回收耗时。

D:\software\Java\jdk1.8.0_151\bin>jstat -gcutil 21984 5000 100 S0 S1 E O M CCS YGC YGCT FGC FGCT GCT 0.00 0.00 68.86 34.52 96.53 89.47 4968 87.791 674 17.954 105.745 0.00 82.22 51.10 50.63 96.53 89.47 4978 87.964 675 18.001 105.965 0.00 84.11 84.52 53.59 96.53 89.47 4984 88.080 676 18.031 106.110 0.00 74.37 0.00 54.93 96.53 89.47 4992 88.211 677 18.059 106.270 67.33 0.00 68.56 59.70 96.53 89.47 5001 88.380 678 18.088 106.468 0.00 82.24 50.94 52.23 96.53 89.47 5008 88.517 679 18.130 106.647 0.00 67.36 68.49 72.10 96.53 89.47 5018 88.681 680 18.164 106.845 0.00 84.11 0.00 48.74 96.53 89.47 5022 88.739 681 18.197 106.936 0.00 88.10 42.98 69.81 96.53 89.47 5032 88.908 682 18.226 107.134 84.16 0.00 52.01 37.07 96.53 89.47 5035 88.968 683 18.257 107.225 99.02 0.00 20.74 61.60 96.53 89.47 5045 89.150 684 18.286 107.437 67.33 0.00 68.32 43.56 96.53 89.47 5051 89.262 685 18.317 107.579 2.7 jstack

通过命令行工具 jstack,也可以实现抓取线程栈的操作。抓取后可以使用类似fastthread(https://fastthread.io/)这样的在线分析工具来分析线程栈。

D:\software\Java\jdk1.8.0_151\bin>jstack 21984 2022-03-22 14:41:27 Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.151-b12 mixed mode): "RMI TCP Connection(14)-10.11.18.236" #55 daemon prio=5 os_prio=0 tid=0x000000006960e000 nid=0x450c runnable [0x000000027fffd000] java.lang.Thread.State: RUNNABLE at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.socketRead(SocketInputStream.java:116) at java.net.SocketInputStream.read(SocketInputStream.java:171) at java.net.SocketInputStream.read(SocketInputStream.java:141) at java.io.BufferedInputStream.fill(BufferedInputStream.java:246) at java.io.BufferedInputStream.read(BufferedInputStream.java:265) - locked (a java.io.BufferedInputStream) at java.io.FilterInputStream.read(FilterInputStream.java:83) at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:550) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:683) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$$Lambda$63/825324542.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) "JMX server connection timeout 28" #28 daemon prio=5 os_prio=0 tid=0x0000000068e70800 nid=0x698 in Object.wait() [0x000000020ffff000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at com.sun.jmx.remote.internal.ServerCommunicatorAdmin$Timeout.run(Redefined) - locked (a [I) at java.lang.Thread.run(Thread.java:748) "RMI Scheduler(0)" #27 daemon prio=5 os_prio=0 tid=0x0000000068e77000 nid=0x5a0c waiting on condition [0x00000001ffffe000] java.lang.Thread.State: TIMED_WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215) at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1093) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:809) at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1074) at java.util.concurrent.ThreadPoolExecutor.runWorker(Redefined) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Redefined) at java.lang.Thread.run(Thread.java:748) "VM Thread" os_prio=2 tid=0x0000000015e9a000 nid=0x2e94 runnable "GC task thread#0 (ParallelGC)" os_prio=0 tid=0x00000000030ac000 nid=0x45a4 runnable "GC task thread#1 (ParallelGC)" os_prio=0 tid=0x00000000030b1800 nid=0x4b98 runnable "VM Periodic Task Thread" os_prio=2 tid=0x000000006828f800 nid=0x4aac waiting on condition JNI global references: 6909 2.8 jcmd

jcmd命令行工具用来查看Java HotSpot 虚拟机的 NMT 功能。查看前提需要开启NMT功能。设置VMOptions:-XX:NativeMemoryTracking=summary/detail 可以开启 NMT 功能,开启后可以使用 jcmd 工具查看 NMT 数据。开启NMT功能,重新启动。

查看线程堆栈信息 D:\software\Java\jdk1.8.0_151\bin>jcmd 16252 VM.native_memory summary D:\software\Java\jdk1.8.0_151\bin>jcmd 16252 VM.native_memory detail

D:\software\Java\jdk1.8.0_151\bin>jcmd 16252 VM.native_memory summary 16252: Native Memory Tracking: Total: reserved=7161154KB, committed=5865482KB - Java Heap (reserved=1048576KB, committed=1048576KB) (mmap: reserved=1048576KB, committed=1048576KB) - Class (reserved=1066262KB, committed=17430KB) (classes #1297) (malloc=9494KB #1211) (mmap: reserved=1056768KB, committed=7936KB) - Thread (reserved=4734092KB, committed=4734092KB) (thread #34) (stack: reserved=4733952KB, committed=4733952KB) (malloc=100KB #186) (arena=40KB #67) - Code (reserved=250005KB, committed=3265KB) (malloc=405KB #1002) (mmap: reserved=249600KB, committed=2860KB) - GC (reserved=48848KB, committed=48748KB) (malloc=10384KB #137) (mmap: reserved=38464KB, committed=38364KB) - Compiler (reserved=187KB, committed=187KB) (malloc=56KB #111) (arena=131KB #3) - Internal (reserved=10085KB, committed=10085KB) (malloc=10021KB #8197) (mmap: reserved=64KB, committed=64KB) - Symbol (reserved=2581KB, committed=2581KB) (malloc=1518KB #3730) (arena=1063KB #1) - Native Memory Tracking (reserved=322KB, committed=322KB) (malloc=74KB #1164) (tracking overhead=248KB) - Arena Chunk (reserved=196KB, committed=196KB) (malloc=196KB) D:\software\Java\jdk1.8.0_151\bin>jcmd 16252 VM.native_memory detail 16252: Native Memory Tracking: Total: reserved=7161155KB, committed=5865551KB - Java Heap (reserved=1048576KB, committed=1048576KB) (mmap: reserved=1048576KB, committed=1048576KB) - Class (reserved=1066262KB, committed=17430KB) (classes #1297) (malloc=9494KB #1211) (mmap: reserved=1056768KB, committed=7936KB) - Thread (reserved=4734092KB, committed=4734092KB) (thread #34) (stack: reserved=4733952KB, committed=4733952KB) (malloc=100KB #186) (arena=40KB #67) - Code (reserved=250006KB, committed=3334KB) (malloc=406KB #1008) (mmap: reserved=249600KB, committed=2928KB) - GC (reserved=48848KB, committed=48748KB) (malloc=10384KB #137) (mmap: reserved=38464KB, committed=38364KB) - Compiler (reserved=187KB, committed=187KB) (malloc=56KB #111) (arena=131KB #3) - Internal (reserved=10085KB, committed=10085KB) (malloc=10021KB #8197) (mmap: reserved=64KB, committed=64KB) - Symbol (reserved=2581KB, committed=2581KB) (malloc=1518KB #3730) (arena=1063KB #1) - Native Memory Tracking (reserved=322KB, committed=322KB) (malloc=74KB #1164) (tracking overhead=248KB) - Arena Chunk (reserved=196KB, committed=196KB) (malloc=196KB) Virtual memory map: [0x0000000000b30000 - 0x0000000000b40000] reserved and committed 64KB for Internal from [0x0000000072d480fe] [0x0000000072d6e045] [0x0000000072d6e154] [0x0000000072cf1755] [0x0000000000b40000 - 0x0000000000b60000] reserved 128KB for GC from [0x0000000072cee317] [0x0000000072d195c2] [0x0000000072d19c3a] [0x0000000072ecd8b6] [0x0000000011f50000 - 0x0000000012160000] reserved 2112KB for GC from [0x0000000072cee317] [0x0000000072d195c2] [0x0000000072d19c3a] [0x0000000072ba2b9c] [0x0000000012150000 - 0x0000000012151000] committed 4KB from [0x0000000072cee6e1] [0x0000000072ba2c12] [0x0000000072ec3a0c] [0x0000000072bc3106] [0x0000000012160000 - 0x00000000122c0000] reserved 1408KB for GC from [0x0000000072cee317] [0x0000000072d195c2] [0x0000000072d19bf0] [0x0000000072ec2c61] [0x00000000122c0000 - 0x00000000123c0000] reserved and committed 1024KB for Thread Stack from [0x0000000072d0f2a8] [0x0000000072ec28ef] [0x0000000072d6c3ea] [0x0000000073391d9f] ... ... [0x0000000072d480fe] [0x0000000072d6e045] [0x0000000072d6e154] [0x0000000072cf1755] (reserved=64KB, committed=64KB) 2.9 jmap

jmap jvm自带命令行工具,可用于了解系统运行时的对象分布。 jmap pid 查看基本信息。 查看堆信息,jmap -heap pid。 jmap -histo pid 查看一些class的使用情况。 jmap -histo:live pid >dump.txt 输出class信息到dump文件。

D:\software\Java\jdk1.8.0_151\bin>jmap 16252 Attaching to process ID 16252, please wait... Debugger attached successfully. Server compiler detected. JVM version is 25.151-b12 0x0000000072990000 36K D:\software\Java\jdk1.8.0_151\jre\bin\dt_socket.dll 0x00000000729a0000 140K D:\software\Java\jdk1.8.0_151\jre\bin\instrument.dll 0x00000000729d0000 32K D:\software\Java\jdk1.8.0_151\jre\bin\npt.dll 0x00000000729e0000 212K D:\software\Java\jdk1.8.0_151\jre\bin\jdwp.dll 0x0000000072a30000 68K D:\software\Java\jdk1.8.0_151\jre\bin\nio.dll 0x0000000072a50000 104K D:\software\Java\jdk1.8.0_151\jre\bin\net.dll 0x0000000072a70000 88K D:\software\Java\jdk1.8.0_151\jre\bin\zip.dll 0x0000000072a90000 164K D:\software\Java\jdk1.8.0_151\jre\bin\java.dll 0x0000000072ac0000 60K D:\software\Java\jdk1.8.0_151\jre\bin\verify.dll 0x0000000072ad0000 8820K D:\software\Java\jdk1.8.0_151\jre\bin\server\jvm.dll 0x0000000073370000 840K D:\software\Java\jdk1.8.0_151\jre\bin\msvcr100.dll 0x00007ff7b0af0000 220K D:\software\Java\jdk1.8.0_151\bin\java.exe 0x00007ffc80290000 156K C:\WINDOWS\SYSTEM32\WINMM.dll 0x00007ffc84070000 2664K C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e\COMCTL32.dll 0x00007ffc8e0c0000 92K C:\WINDOWS\SYSTEM32\dhcpcsvc6.DLL 0x00007ffc8f2e0000 40K C:\WINDOWS\SYSTEM32\VERSION.dll 0x00007ffc8f310000 116K C:\WINDOWS\SYSTEM32\dhcpcsvc.DLL 0x00007ffc91290000 36K C:\WINDOWS\SYSTEM32\WSOCK32.dll 0x00007ffc95780000 1936K C:\WINDOWS\SYSTEM32\dbghelp.dll 0x00007ffc95a60000 7760K C:\WINDOWS\SYSTEM32\windows.storage.dll 0x00007ffc96a40000 208K C:\WINDOWS\system32\rsaenh.dll 0x00007ffc96dd0000 236K C:\WINDOWS\SYSTEM32\IPHLPAPI.DLL 0x00007ffc96e20000 808K C:\WINDOWS\SYSTEM32\DNSAPI.dll 0x00007ffc97130000 424K C:\WINDOWS\system32\mswsock.dll 0x00007ffc97320000 48K C:\WINDOWS\SYSTEM32\CRYPTBASE.dll 0x00007ffc97330000 96K C:\WINDOWS\SYSTEM32\CRYPTSP.dll 0x00007ffc973d0000 176K C:\WINDOWS\SYSTEM32\Wldp.dll 0x00007ffc97830000 184K C:\WINDOWS\SYSTEM32\USERENV.dll 0x00007ffc978b0000 124K C:\WINDOWS\SYSTEM32\profapi.dll 0x00007ffc97970000 136K C:\WINDOWS\System32\win32u.dll 0x00007ffc97a10000 628K C:\WINDOWS\System32\msvcp_win.dll 0x00007ffc97cc0000 520K C:\WINDOWS\System32\bcryptprimitives.dll 0x00007ffc97d50000 156K C:\WINDOWS\System32\bcrypt.dll 0x00007ffc97d80000 1024K C:\WINDOWS\System32\ucrtbase.dll 0x00007ffc97ed0000 2848K C:\WINDOWS\System32\KERNELBASE.dll 0x00007ffc981a0000 1068K C:\WINDOWS\System32\gdi32full.dll 0x00007ffc982b0000 32K C:\WINDOWS\System32\NSI.dll 0x00007ffc98340000 340K C:\WINDOWS\System32\shlwapi.dll 0x00007ffc983a0000 7440K C:\WINDOWS\System32\SHELL32.dll 0x00007ffc98af0000 632K C:\WINDOWS\System32\msvcrt.dll 0x00007ffc98c60000 1172K C:\WINDOWS\System32\RPCRT4.dll 0x00007ffc99080000 760K C:\WINDOWS\System32\KERNEL32.DLL 0x00007ffc99140000 692K C:\WINDOWS\System32\SHCORE.dll 0x00007ffc99320000 3408K C:\WINDOWS\System32\combase.dll 0x00007ffc99680000 172K C:\WINDOWS\System32\GDI32.dll 0x00007ffc997f0000 624K C:\WINDOWS\System32\sechost.dll 0x00007ffc99920000 428K C:\WINDOWS\System32\WS2_32.dll 0x00007ffc99990000 1664K C:\WINDOWS\System32\USER32.dll 0x00007ffc99b30000 192K C:\WINDOWS\System32\IMM32.DLL 0x00007ffc99b60000 32K C:\WINDOWS\System32\PSAPI.DLL 0x00007ffc99b70000 696K C:\WINDOWS\System32\ADVAPI32.dll 0x00007ffc9a250000 2004K C:\WINDOWS\SYSTEM32\ntdll.dll


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有