如果遇到 ASSERT: "bytes <= bufferSize" in file tools\qringbuffer.cpp,有可能在使用时没有加锁。
因为多线程的问题,造成qringbuffer内部除问题(QT为什么不在内部加锁?)
解决方法:
(1)、互斥量
QMutex m_mutex; //可成员(建议)、可全局
QMutexLocker locker(&m_mutex);
(2)、多线程信号链接
启用一个QThread,然后在QThread里面再new Worker。
然后用connect链接 QThread he Worker信号,实现消息交互(用指针)