如何打印某个线程崩溃时的栈信息,大家有什么好方法
如题,是否可以利用WIN32_STRUCTURAL_EXCEPTIONS结构化异常处理,或者是线程专属存储?望大家不吝赐教:) 有办法。
老早就用过。
给你一篇文章看看就知道了。 http://www.codeproject.com/KB/debug/XCrashReportPt1.aspx very good,thx 呵呵,我的原意是这样:
譬如Server有n个线程,现在有个线程死掉了,它死的时候未释放锁资源,导致其他线程block。
为了找到那个down点,我想catch住所有线程入口到exit过程中的非正常异常,并在catch时打印线程当时的栈信息
问题是现场的栈信息如何打印出来。。。还要是友好点的如果是EIP类的,看起来很不方便
现在正在研究ACE_OS_Object_Manager::seh_except_selector(),
ACE_OS_Object_Manager::seh_except_handler()
不知道有没有较大帮助 与其这样,你不如自己仔细排查程序的问题,避免这种情况发生。
比如线程crash的时候,使用SEH等措施,强制回收锁资源,就可以防止影响其它处理了。
页:
[1]