The QRunnable 类是所有可运行对象的基类。 更多...
头: | #include <QRunnable> |
qmake: | QT += core |
Since: | Qt 4.4 |
QRunnable () | |
virtual | ~QRunnable () |
bool | autoDelete () const |
virtual void | run () = 0 |
void | setAutoDelete (bool autoDelete ) |
The QRunnable 类是所有可运行对象的基类。
The QRunnable 类是表示需要执行任务 (或代码片段) 的接口,表示是通过重实现 run () 函数。
可以使用
QThreadPool
在单独线程中执行代码。
QThreadPool
删除
QRunnable
自动若
autoDelete
() 返回
true
(默认)。使用
setAutoDelete
() 以改变自动删除标志。
QThreadPool 支持执行同一 QRunnable 多次通过调用 QThreadPool::tryStart (this) 从 run () 函数。若 autoDelete 被启用 QRunnable 会被删除当最后一个线程退出 run 函数时。调用 QThreadPool::start () 多次采用同一 QRunnable 当 autoDelete 被启用会创建竞争条件且不推荐。
另请参阅 QThreadPool .
构造 QRunnable 。默认启用自动删除。
另请参阅 autoDelete () 和 setAutoDelete ().
[虚拟]
QRunnable::
~QRunnable
()
QRunnable 虚拟析构函数。
返回
true
自动删除被启用;否则 false。
若自动删除被启用, QThreadPool 将自动删除此可运行后于调用 run ();否则,所有权仍然属于应用程序程序员。
另请参阅 setAutoDelete () 和 QThreadPool .
[pure virtual]
void
QRunnable::
run
()
在子类中实现此纯虚函数。
启用自动删除若 autoDelete 为 true;否则自动删除被禁用。
若自动删除被启用, QThreadPool 将自动删除此可运行后于调用 run ();否则,所有权仍然属于应用程序程序员。
注意,必须设置此标志先于调用 QThreadPool::start ()。调用此函数后于 QThreadPool::start () 将导致未定义行为。
另请参阅 autoDelete () 和 QThreadPool .