jmap的使用
Tasklist/SVC 列出所有进程,系统服务及其对应的PID值!
--------------------------------------------------------------------
进程名 PID 服务
================ ==========
System Idle Process 0 暂缺
System 4 暂缺
smss.exe 480 暂缺
csrss.exe 536 暂缺
winlogon.exe 560 暂缺
SERVICES.EXE 604 Eventlog, PlugPlay
LSASS.EXE 616 PolicyAgent, ProtectedStorage, SamSs
SVCHOST.EXE 768 DcomLaunch, TermService
SVCHOST.EXE 820 RpcSs
SVCHOST.EXE 956 Dnscache
SVCHOST.EXE 1068 LmHosts, RemoteRegistry, SSDPSRV
ZhuDongFangYu.exe 1104 ZhuDongFangYu
aswUpdSv.exe 1180 aswUpdSv
ashServ.exe 1236 avast! Antivirus
spoolsv.exe 1480 Spooler
SVCHOST.EXE 1960 WebClient
用netstat -ano命令,列出所有端口对应的PID
--------------------------------------------------------------------
Active Connections
Proto Local Address Foreign Address State PID
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 2008
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 820
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4
TCP 0.0.0.0:1433 0.0.0.0:0 LISTENING 1556
TCP 0.0.0.0:3306 0.0.0.0:0 LISTENING 1668
TCP 127.0.0.1:1030 0.0.0.0:0 LISTENING 3056
TCP 127.0.0.1:1634 127.0.0.1:12080 ESTABLISHED 2996
TCP 127.0.0.1:3967 127.0.0.1:12080 ESTABLISHED 2996
TCP 127.0.0.1:5488 127.0.0.1:12080 ESTABLISHED 2996
TCP 127.0.0.1:5496 127.0.0.1:12080 ESTABLISHED 2996
TCP 127.0.0.1:5508 127.0.0.1:12080 ESTABLISHED 2996
TCP 127.0.0.1:5562 127.0.0.1:12080 ESTABLISHED 2996
jmap 是一个可以输出所有内存中对象的工具,甚至可以将VM 中的heap,以二进制输出成文本。使用方法 jmap -histo pid。如果连用 SHELL jmap -histo pid>a.log可以将其保存到文本中去(windows下也可以使用),在一段时间后,使用文本对比工具,可以对比出GC回收了哪些对象。jmap -dump:format=b,file=f1 3024可以将3024进程的内存heap输出出来到f1文件里。