2012-03-18 7 views
2

私のクラスで作成したスレッドをすべて利用できるようにする方法を探しています(スレッドはユーザーによって動的に作成されますが、アプリケーションが動作しています)。私はそれらのスレッドを操作することができますので、すべてのスレッドオブジェクトのポインタを取得し、それらを1か所に置くための良い方法はありますか?Qtでスレッドを集める

+0

QThreadすべての子を見つけるには?スレッドを作成するクラスであれば、何を予測する必要がありますか? –

+0

これは、作成するスレッドの数を予測できないということです。私はちょうど私がそれらと仕事をさせるためにどこかに入れたいです。私は、アクティブなスレッドのリストを更新し、もはやアクティブではないリストのスレッドから削除する必要があります。 – Dzakub

答えて

3

最初に、最良の解決策は間違いなくQThreadの作成を追跡するでしょう。たとえそれらが「オンザフライ」で作成されたとしても、それらにポインタを格納することができるはずです。

彼らは、少なくとも親が同じQObjectにあると仮定すると、あなたが使用できます。

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

さん

あなたは 『予測』したいと思うのはなぜ
+0

はい、彼らは親であり、これは私が探していた解決策です。ありがとうございました! – Dzakub

関連する問題