随笔分类 -  Debug

摘要:!dumpheap stat新加入了两个参数:-live和–dead,用来区别显示可以被GC的和Rooted的内存。详细情况参看这里。 阅读全文
posted @ 2012-03-09 13:20 夜深沉 阅读(277) 评论(0) 推荐(0)
摘要:当调试Windows服务的启动代码时,服务经常因为长时间没有响应而被Windows关闭。为了防止这种情况,我们需要设置注册表项:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServicesPipeTimeout。Windows用这个值就是来决定Service启动超时的时间。 阅读全文
posted @ 2010-12-23 15:07 夜深沉 阅读(1316) 评论(0) 推荐(0)
摘要:前几天我在Windows 2008 X64 server上面用GFlags来调试一个Windows服务。但是我选中的的debugger就是不能正常启动。要想说清楚这个问题必须从GFlags的工作原理说起:GFlags的大部分工作其实并不神秘——修改注册表。Windows的行为会根据这些注册表项的变化来做出相应的变化。如果我们想叫进程启动的时候同时启动调试器,我们就需要在HK... 阅读全文
posted @ 2010-11-18 12:49 夜深沉 阅读(662) 评论(0) 推荐(0)
摘要:首先,你可以在调试器中启动被调试进程。如果你打算调试一个正在运行的进程,你可以用将调试器附加(attach)的被调试进程上。但是如果你想当进程启动时就开始调试,例如:调试一个Windows service,就有点麻烦了。如果你有被调试进程的代码,你可以考虑加入DebugBreak()或者__asm { int 3 }来迫使被调试进程抛出一个调试异常。Windows检测到这个调试异常,将启动vsji... 阅读全文
posted @ 2010-11-18 12:34 夜深沉 阅读(774) 评论(0) 推荐(0)