前言
不知道大家有没有留意过,我们在拖动窗体的时候,有时候显示的是虚框,有时候显示的是窗体内容。可能有的朋友不是太明白,没关系,一图胜千言。请看图:
项目里的一个升级程序偶尔会死锁,查看dump
后发现是死在了ShellExecuteExW
里。经验少,不知道为什么,于是在高端调试论坛里发帖求助,链接如下http://advdbg.org/forums/6520/ShowPost.aspx
根据张银奎老师的描述可知,应该是拥有关键段的线程意外结束了。仔细检查项目中的代码,发现程序中有使用TerminateThread()
来强制杀线程的代码。很可疑,于是写了一个测试程序,还原了这个问题。