Process Explore & Windbg

遇到点内存泄漏、句柄泄漏,应该是家常便饭了。这次就是,程序运行内存一点点增加,句柄也是只增不减,个数竟然可以达到几十万,真是瞪大了我的双眼。

借此机会,学习下相关工具~

Process Explore

任务管理器 & 性能监视器

任务管理器应该是比较常用的了,可以查看程序的进程信息、内存、线程、句柄等等。

性能监视器也是系统自带工具,具体使用后续再说吧。

Process Explore

因为任务管理器性能有限,很多时候鞭短莫及,只能另辟蹊径。

Process Explore 可以说是加强版的任务管理器,很好很强大,先下载之:Process Explore

  • 查看进程相关信息、程序调用关系
  • 资源(内存、线程、句柄)占用

对进程进行操作和管控的主动工具

.NET对象与Windows句柄(一)(二)(三)

Process Explorer - 系统极客

Process Monitor

系统进程监视软件,Filemon+Regmon 的合成版:

  • Filemon:文件监视器,专门用来监视系统中的任何文件操作过程
  • Regmon:注册表监视器,用来监视注册表的读写操作过程

对系统全局事件进行监控的被动工具。下载路径:Process Monitor

通过 Process Monitor 的事件监控功能,可以查到某个 Windows 功能选项所对应的注册表值。

Process Monitor:Windows事件监控利器

Windbg

https://github.com/EasyDarwin/Tools

其他

dotTrace

.net程序内存与性能分析工具,标识特定时间下内存中的对象。

Bear

一款专注于系统资源检测的Windows小工具,它可以检测:

  • 所有GDI对象的使用情况 (hDC, hRegion, hBitmap, hPalette, hFont, hBrush)
  • 所以用户对象的使用情况 (hWnd, hMenu, hCursor, SetWindowsHookEx, SetTimer and some other stuff)
  • 句柄(Handle)数量

相对于Process Explorer的大而全,Bear专注而细腻,更便于监测定位进程具体的资源泄漏类型,从而缩小排查的范围。

.NET Memory Profiler

内存分析器。

VS Profiler

利用VS自带的性能分析工具:Visual Studio Profiler

Adplus

类似Windbg,抓取Dump分析。

CLR Profiler4

.Net内存泄漏检测工具,好像会狂占C盘内存!

具体参见:https://www.cnblogs.com/Leo_wl/p/3230187.html

   How To: Use CLR Profiler | MSDN

posted @ 2018-08-07 21:32  万箭穿心,习惯就好。  阅读(696)  评论(0编辑  收藏  举报