#include <QCoreApplication>
#include <QThreadPool>
#include <QRunnable>
#include <QDebug>
class MyTask : public QRunnable
{
public:
void run() override
{
// 在这里执行你的任务
qDebug() << "Task is running on thread" << QThread::currentThreadId();
QThread::sleep(2);//等2秒,看得清楚点
}
};
int main(int argc, char *argv[])
{
// 初始化应用程序
QCoreApplication app(argc, argv);
// 设置线程池的最大线程数
QThreadPool::globalInstance()->setMaxThreadCount(4);
// 创建并启动任务
for (int i = 0; i < 10; ++i)
{
MyTask *task = new MyTask();
QThreadPool::globalInstance()->start(task);
}
return app.exec();
}