1

我有一个 Qt 应用程序,它在 Windows Vista 机器上退出时间歇性崩溃(它在 Mac 和 Windows XP 上运行良好,需要在其他 Windows 版本上尝试更多)。我正在退出时进行 QApplication 清理,并在崩溃时获取以下堆栈跟踪。如果有人知道我可能做错了什么,请告诉我。

Program received signal SIGSEGV, Segmentation fault.
[Switching to thread 876.0x15f0]
0x69dfb912 in QEventDispatcherWin32Private::unregisterTimer (this=0x14cdf9b8,
t=0x1a1f6868, closingDown=true) at kernel/qeventdispatcher_win.cpp:620
(gdb) bt
#0  0x69dfb912 in QEventDispatcherWin32Private::unregisterTimer (
    this=0x14cdf9b8, t=0x1a1f6868, closingDown=true)
    at kernel/qeventdispatcher_win.cpp:620
#1  0x69dfd479 in QEventDispatcherWin32::closingDown (this=0x14cdf998)
    at kernel/qeventdispatcher_win.cpp:1115
#2  0x69cd7ff2 in QThreadPrivate::finish (arg=0x14cddb48, lockAnyway=true)
    at thread/qthread_win.cpp:376
#3  0x69cd7ec8 in QThreadPrivate::start (arg=0x14cddb48)
    at thread/qthread_win.cpp:348
#4  0x766f2599 in wcstombs () from C:\Windows\system32\msvcrt.dll
#5  0x766f26b3 in msvcrt!_beginthreadex () from C:\Windows\system32\msvcrt.dll
#6  0x7624d309 in KERNEL32!AcquireSRWLockExclusive ()
    from C:\Windows\system32\kernel32.dll
#7  0x774b16c3 in ntdll!RtlInitializeNtUserPfn ()
    from C:\Windows\system32\ntdll.dll
#8  0x774b1696 in ntdll!RtlInitializeNtUserPfn ()
    from C:\Windows\system32\ntdll.dll
#9  0x00000000 in ?? () 
4

0 回答 0