QRunnable类 API
1)在Qt中使用线程池需要先创建任务,添加到线程池中的每一个任务都需要是一个 QRunnable 类型,因此在程序中需要创建子类继承 QRunnable 这个类。
2)然后重写 run() 方法,在这个函数中编写要在线程池中执行的任务。
3)并将这个子类对象传递给线程池,这样任务就可以被线程池中的某个工作的线程处理掉了。
// 在子类中必须要重写的函数, 里边是任务的处理流程
[pure virtual] void QRunnable::run();
void QRunnable::setAutoDelete(bool autoDelete);
// 参数设置为 true: 这个任务对象在线程池中的线程中处理完毕, 这个任务对象就会自动销毁
// 参数设置为 false: 这个任务对象在线程池中的线程中处理完毕, 对象需要程序猿手动销毁
// 获取当前任务对象的析构方式,返回true->自动析构, 返回false->手动析构
bool QRunnable::autoDelete() const;
创建一个任务类
class MyWork : public QObject, public QRunnable

本文介绍了如何在Qt中使用QRunnable类创建任务并将其添加到线程池,包括重写run()方法、设置任务自动销毁、使用全局QThreadPool以及示例代码。
最低0.47元/天 解锁文章
3万+

被折叠的 条评论
为什么被折叠?



