multithreading - 关于QThread的问题

标签 multithreading qt qthread

如果我创建一个 QThread 并从另一个线程调用它的槽之一,它是在 QThread 对象的线程上下文中调用,还是从进行调用的线程上下文中调用?

最佳答案

如果您通过发出信号来执行插槽,那么这取决于您拥有的信号到插槽连接的类型。通过直接连接连接到信号的插槽将在发射器的线程中执行。通过排队连接连接的插槽将在接收方的线程中执行。请看这里:http://doc.qt.nokia.com/4.7/threads-qobject.html

如果slot是直接执行的,用[QThread object]->slot(),那么slot会在调用的线程中执行。

关于multithreading - 关于QThread的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5049877/

相关文章:

php - PHP 中的多线程编程以避免运行时限制

java - 等待方法执行

java - 确保并发对象调用而不加锁的最佳方法是什么

windows - Qt 多头控制台应用程序在退出时挂起(使用 ctrl-c)

c++ - 为什么调用了数据库关闭函数后,Qt中的SQLite数据库还是删除不了?

c++ - QThread 错误,未在此范围内定义

multithreading - "nonblocking"数据结构如何可能?

c++ - 如何将 QComboBox 添加到 Qt Creator 的主工具栏

c++ - 不正确地终止线程?

python - 在调用函数时如何防止 GUI 卡住? (PyQT4, Python3)