·H
Book = namedtuple('Book', 'name, author')
In [70]: set(dir(Book)) & namedtuple_methods
Out[70]: {'_asdict', '_fields', '_make', '_replace', '_source'}
的.cpp
#include <QThread>
#include <QDebug>
class MainWindow : public QThread
{
Q_OBJECT
protected:
void run()
{
while (1)
{
qDebug() << "\nsdfdsf";
}
}
public:
MainWindow(QThread *parent = 0);
~MainWindow();
};
现在,这是一种使用线程的旧方法,我知道。 我想知道在使用方法时停止线程的方法是什么?
请显示示例。
答案 0 :(得分:0)
在Qt5中,线程可以处理interrupt request (QThread::requestInterruption
),因此有一种优雅而统一的方式让线程停止。
另见this answer。
答案 1 :(得分:0)
最简单的方法是将while(1)
替换为while(someCondition)
,其中someCondition
可能代表一个简单的布尔变量,您调用的函数或其他任何适当的检查以确定该线程是否仍然存在跑步