(1) taskmgr.exe工具:用于及时跟踪进程的运行状况
在显示指定进程的信息时,注意观察“CPU使用”、“CPU时间”、“内存使用”、“User对象”、“IO读取”、“句柄计数”、“线程计数”、“IO写入”等信息,对解决问题能够起到一定的作用
可能的问题如:
1》CPU占用过高
2》内存持续增长,那么程序中可能存在内存泄露的问题
3》句柄计数持续增长,那么可能是有些文件句柄、系统核心对象没有关闭或释放
(2) netstat工具:用于显示系统的网络状态,特别是socket的信息
E:/>netstat -n
Active Connections
Proto Local Address Foreign Address State
TCP 127.0.0.1:1044 211.95.77.12:80 ESTABLISHED
如果有很多CLOSE_WAIT、FIN_WAIT_2状态的socket,则可能是应用程序中的socket没有合理关闭。
TCP套接字状态 |
含义 |
CLOSED |
没有使用这个套接字 |
LISTEN |
套接字正在监听入境连接 |
SYN_SENT |
套接字正在试图主动建立连接 |
SYN_RECEIVED |
正在处于连接的初始同步状态 |
ESTABLISHED |
连接已建立 |
CLOSE_WAIT |
远程套接字已经关闭:正在等待关闭这个套接字 |
FIN_WAIT_1 |
套接字已关闭,正在关闭连接 |
CLOSING |
套接字已关闭,远程套接字正在关闭,暂时挂起关闭确认 |
LAST_ACK |
远程套接字已,正在等待本地套接字的关闭确认 |
FIN_WAIT_2 |
套接字已关闭,正在等待远程套接字关闭 |
TIME_WAIT |
这个套接字已经关闭,正在等待远程套接字的关闭传送 |