[转载] VS2005多线程调试“起死回生”

来源:http://blog.csdn.net/powerlly/archive/2010/02/04/5288346.aspx

 

在近两天前的很长一段时间,都被调试程序时死机状苦恼着。那个郁闷心情现在彻底不复存在了^_^

      每次在子线程代码段中设置断点,再执行几步“必死无疑”:

病号:IBM T60, WinXP SP2, VS2005 C++

症状:鼠标可用,键盘无效,Alt+Tab无法切换,CPU闲,似死非死状

      初始未寻良方诊治,自开一处:

药方一:长按开机键(5秒),重启。(那个心疼啊)

       后久病成医,又发明一处:

药方二:长按开机键(4秒),然后一个个立即结束进程(直到devenv.exe就“回光返照”了)。(继续等待重启)

       体验过每日重启10+的感觉吗?那真是... 有苦说不出啊~~~

       多次寻觅解决良方,寻得一处:

药方三:开发一系统服务,开机后运行,可以响应键盘快捷键杀死devenv.exe进程。(此方未寻得,也懒于实现)

      

       继续痛苦吧,不在痛苦中灭亡,就在痛苦中爆发:

       偶然机会,死机时Alt+Tab发现居然能切换出cmd窗口,而且可鼠标复制/粘贴。

良方:调试程序的时候,记得开着cmd,输入命令:
         tasklist /fi "imagename eq devenv.exe"

         列出该进程信息,然后输入(注意输完后不要回车哦,我提醒了,不然,试下也无妨):

         taskkill /f /pid   <PID>

         其中<PID>是devenv.exe进程号。然后你该干嘛就干嘛吧!

         当出现以上死机症状时,切换出cmd,用鼠标操作复制一个回车(标记->点击空白处拖动两行->复制->粘贴)。

好了,药到病除!

不用再经历重启机器的磨难了,修成正果,可以起死回生了,阿弥陀佛!

        taskkill /fi "imagename eq ***.exe" 就不用先查PID了。

        例:taskkill /fi "imagename eq notepad.exe"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值