Process Explore & Windbg
遇到点内存泄漏、句柄泄漏,应该是家常便饭了。这次就是,程序运行内存一点点增加,句柄也是只增不减,个数竟然可以达到几十万,真是瞪大了我的双眼。
借此机会,学习下相关工具~
Process Explore
任务管理器 & 性能监视器
任务管理器应该是比较常用的了,可以查看程序的进程信息、内存、线程、句柄等等。
性能监视器也是系统自带工具,具体使用后续再说吧。
Process Explore
因为任务管理器性能有限,很多时候鞭短莫及,只能另辟蹊径。
Process Explore 可以说是加强版的任务管理器,很好很强大,先下载之:Process Explore
- 查看进程相关信息、程序调用关系
- 资源(内存、线程、句柄)占用
对进程进行操作和管控的主动工具。
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
Process Explore & Windbg的更多相关文章
- 用WinDbg调试Windows和驱动程序
由于本人能力有限,翻译不足之处敬请谅解,欢迎批评指正:sunylat@163.com MSDN原文:https://msdn.microsoft.com/zh-cn/library/windows/h ...
- paip.超实用 360浏览器最近频繁奔溃解决流程.
paip.超实用 360浏览器最近频繁奔溃解决流程. 作者Attilax , EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog.csdn.n ...
- 【Web应用-Kudu】Kudu 管理和诊断 azure web 应用
Azure Kudu是 GitHub 上的一个开源项目,Kudu 站点 (也称为网站控制管理 SCM) 提供了一系列的在线工具,可以帮助用户查看 web 应用的设置,诊断 web 应用,以及安装 w ...
- debugging tools
https://blogs.msdn.microsoft.com/debugdiag/ https://blogs.msdn.microsoft.com/debuggingtoolbox/2012/1 ...
- Qt技巧:Win7下打包发布Qt程序(解释的比较清楚,把exe和dll伪装合并成一个文件)
转自:http://www.stardrad.com/blog/qt-5%E7%A8%8B%E5%BA%8F%E5%9C%A8windows%E4%B8%8A%E7%9A%84%E5%8F%91%E5 ...
- 将Qt 动态链接生成的exe及依赖dll打包方法
源地址:http://blog.csdn.net/ztz0223/article/details/8939341 将Qt 动态链接生成的exe及依赖dll打包方法 原文:http://www.qtcn ...
- Qt--将Qt 动态链接生成的exe及依赖dll打包方法
Qt静态编译链接生成的exe文件,不需依赖dll,可以独立运行,发布很方便. 但绝大多数用的都是Qt开源版本,如果用静态链接,会有些限制. 方法之一,就是用动态编译,然后把exe和需要的dll整合成一 ...
- 在Windows平台下Qt的exe报错问题排查步骤
在Windows平台下Qt的exe报错问题排查步骤 工具介绍: 1. Dependency Worker Dependency Worker是一个免费的用具用来扫描任何的32bit 或者64bit 的 ...
- Qt_技巧_将Qt动态链接生成的exe与dll打包方法
刚开始接触Qt,发现mac平台直接release编译一下就能够直接生成.app文件,并且可以直接运行..app位于工程文件内. 同样发方法在Windows直接运行exe却出现缺失dll情况. 讲过网上 ...
随机推荐
- powerdesigner 生成表备注
第一步: 操作:Database-->Edit Current DBMS,进入下图页面, 然后分别将 Script-->Objects-->Table-->TableComme ...
- 使用dos 作为中介实现cpython 和c# 交互
最近在使用python 处理一些图形的东西. 实现:对一些512 的图进行像素遍历RGBA 变量, 查询通道不是 255 255 255 颜色 的矩阵,进行切图到空白 之前使用c#进行 确实快10 倍 ...
- 【Mac】使用PicGIF制作gif动态图片
动态图片是我们常常需要的,mac系统下制作gif图片,可以使用PicGIF,AppStore中有一个简单版本免费的 环境与工具 1.mac系统 2.PicGIF Lite(可以在AppStore下载) ...
- C语言基础课第四次作业
1.实验代码 7-2 打印九九口诀表 (15 分) #include<stdio.h> #include<math.h> int main(void){ int a, ...
- 选择排序(直接排序)java语言实现
class demo { public static void main(String[] args) { int[] arr={1,4,2,6,8,9,0,5,3,2,2,4,4,6,7,8}; f ...
- 2018.10.02 NOIP模拟 矩阵分组(二分答案)
传送门 考场上并不会写二分的check函数,下来看了看题解发现真是妙极. 不难想到每次直接从四个角各按阶梯状拓展出合法区域A,再检验B是否合法就行了.(然而考场上写的弃疗了) 于是题解用了一些小技巧优 ...
- OpenGL中的帧缓存
OpenGL中的帧缓存 在OpenGL窗口中, 左下角的像素为(0, 0). 一般而言, 像素(x, y)占据的矩形区域左下角为(x, y), 右上角为(x+1, y+1). 1. 缓存及其用途 [1 ...
- 企业计划体系的变迁:从ERP到APS再到SCP
规划是供应链运作的大脑.几十年来,规划从MRP发展到到ERP到APS再到SCP,经历了从部分到全局,从静态到动态,从企业到供应链的发展历程.供应链的效率取决于规划.规划不到位,任何执行都是事后挽救. ...
- Mysql工作記錄之修改默認存儲引擎及重設root用戶密碼
1>修改默認存儲引擎方法 修改配置文件,然後重啟mysql服務: [root@CHW mysql]# cat /etc/my.cnf [my ...
- Spring 注入集合类型
定义了一个类: @Service public class StringTest implements CachedRowSet,SortedSet<String>,Cloneable @ ...