2012-03-18 57 views
2

我正在尋找一種方法讓我的一個類創建的所有線程都可以讓我使用它們(線程是根據用戶動態創建的,我無法預測有多少人會工作,而我的應用程序正在工作)。有沒有一種很好的方法來獲取所有線程對象指針並將它們放在一個地方,以便我可以操縱這些線程?在Qt中收集線程

+0

爲什麼你會想‘預言’?如果這是你的班級創建線程,你有什麼預測? – 2012-03-18 12:35:43

+0

好吧,我的意思是我無法預測將創建多少個線程。我只是想把它們放在某個地方讓我和他們一起工作。我需要更新活動線程列表並從列表中刪除不再處於活動狀態的線程。 – Dzakub 2012-03-18 12:50:44

回答

3

作爲第一個,最好的解決方案肯定會跟蹤QThread的創建。即使它們是「即時創建」的,您應該能夠存儲指向它們的指針,甚至是全局指針。

假設他們至少與父母相同的QObject,你可以使用:

QList<QThread*> QObject::findChildren <QThread*>() const 

要查找所有孩子QThread

+0

是的,他們是父親,這是我正在尋找的解決方案。謝謝! – Dzakub 2012-03-18 13:05:41