QT5.2.0; Debian Wheezy:QSocketNotifier :: type()段错误

时间:2014-01-24 19:31:53

标签: c++ multithreading qt

我有一个使用QThreadPool的多线程应用。它会在一段随机时间(有时是几分钟,有时是几小时......)之后以段错误的方式崩溃。我用调试符号重新编译并运行GDB。这是回溯:

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7231170 in QSocketNotifier::type() const ()
   from /opt/Qt/5.2.0/gcc_64/lib/libQt5Core.so.5
(gdb) where
#0  0x00007ffff7231170 in QSocketNotifier::type() const ()
   from /opt/Qt/5.2.0/gcc_64/lib/libQt5Core.so.5
#1  0x00007ffff724b732 in ?? () from /opt/Qt/5.2.0/gcc_64/lib/libQt5Core.so.5
#2  0x00007ffff51d713b in g_main_context_check ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ffff51d75c2 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007ffff51d7744 in g_main_context_iteration ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007ffff724c023 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /opt/Qt/5.2.0/gcc_64/lib/libQt5Core.so.5
#6  0x00007ffff71fa2cb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /opt/Qt/5.2.0/gcc_64/lib/libQt5Core.so.5
#7  0x00007ffff71fe33e in QCoreApplication::exec() ()
   from /opt/Qt/5.2.0/gcc_64/lib/libQt5Core.so.5
#8  0x0000000000409bb9 in main (argc=1, argv=<optimized out>) at main.cpp:166

这是完全的回溯。它引用/提及应用程序本身内基本上没有代码;这一切似乎都是导致故障的Qt库代码。由于GDB没有在应用程序本身内引用任何内容,因此不确定应用程序本身包含哪些来源。有什么想法吗?

0 个答案:

没有答案