是否可以命名QThread?

时间:2014-10-03 09:20:48

标签: rename qt multithreading

我有一个Linux Qt应用程序,可以创建一些QThreads

我知道当你创建一个线程时,它会继承父名,我可以在使用htopps ax -L时看到它。

是否可以通过像ps ax -Lhtop这样的bash命令命名这些QThread并查看其名称?

1 个答案:

答案 0 :(得分:4)

是的,只需在开始之前为QThread对象指定名称:

QThread* thr = new QThread(this);

thr->setObjectName("worker thread");
the docs中的

  

选择线程的名称(由...标识)   例如,Linux上的命令ps -L,你可以调用setObjectName()   在开始线程之前。如果你不调用setObjectName(),那么   给你的线程的名称将是运行时类型的类名   您的线程对象(例如,“RenderThread”)的情况   Mandelbrot示例,因为这是QThread子类的名称)。注意   目前,这在Windows上的发布版本中不可用。