C++/Qt - QThread 与 QRunnable

标签 c++ qt concurrency qthread

QThreads 和 QRunnable 有什么区别?

什么时候应该使用 QThread,什么时候使用 QRunnable?

最佳答案

QThread 可以运行事件循环,QRunnable 没有,所以不要将它用于设计为具有事件循环的任务。此外,不是 QObject,QRunnable 没有内置的方式来显式地与其他组件通信。您必须使用低级线程原语(例如用于收集结果的互斥保护队列等)手动编写代码。使用 QThread,您可以使用线程安全的信号和插槽。

关于C++/Qt - QThread 与 QRunnable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16791824/

相关文章:

c++ - 如何追踪 COM 内存泄漏

c++ - 在 Windows 上安装 MongoDB C++ 驱动程序。

c++ - 编译时错误 : expected constructor, 析构函数或转换

c++ - 如何在 QPushButton 悬停时设置高亮

go - 在 Go Playground 上没有得到预期的结果

c++ - 新窗口不显示

c++ - 当只有 1 个线程经常使用某个对象而其他线程很少使用该对象时,如何最大限度地减少该对象的互斥锁定?

python - 中央小部件的 pyqt 设计器和布局

concurrency - 如何使用 ZooKeeper 实现 Chubby 风格的锁序列器?

python - python并发下载和处理大文件