在多线程环境中,如果用windbg看不到正确的调用堆栈,并且有用到锁的话, 可以尝试用**!locks命令打印出当前正在被使用的锁的相关信息。打印出的相关信息中,就包含了当前使用这把锁的相关线程ID。 然后我们再用~* k 和~IDs找到并切换到相关线程,并用.excr命令分析崩溃的上下文,之后用kp**命令说不定就可以输出正确的调用堆栈啦。
转载于:https://my.oschina.net/u/2533477/blog/1505807
在多线程环境中,如果用windbg看不到正确的调用堆栈,并且有用到锁的话, 可以尝试用**!locks命令打印出当前正在被使用的锁的相关信息。打印出的相关信息中,就包含了当前使用这把锁的相关线程ID。 然后我们再用~* k 和~IDs找到并切换到相关线程,并用.excr命令分析崩溃的上下文,之后用kp**命令说不定就可以输出正确的调用堆栈啦。
转载于:https://my.oschina.net/u/2533477/blog/1505807