我正在Linux
使用 Qt 库编写一个应用程序。
所以,有两个QThreads
。在其中一个线程pcap_next()
函数中while
循环调用。所有线程在其工作期间经常使用彼此的公共成员。
不使用pcap
库(例如从硬盘读取数据包)一切都是正确的,但是当我尝试将 pcap 的功能放入单独的thread
时,我有 SEGFAULT 错误。
我无法理解如何pcap
工作。它看起来像pcap
冻结了整个过程,因此线程无法访问彼此的公共成员。
run()
pcap的线程的主要功能是这样的:
while()
{
Data = pcap_next(handle, &header);
if (Data...)
{
//processing functions
}
}
有任何想法吗?