QThreads と QRunnable の違いは何ですか?
いつ QThread と QRunnable を使用する必要がありますか?
QThreadPool と QThread
のどちらを使用するかを選択する Qt フレームワークには、マルチスレッド用のツールが多数用意されています。適切なツールを選択するのは最初は難しいかもしれませんが、実際には、決定木は 2 つのオプションから構成されています。つまり、Qt にスレッドを管理してもらうか、自分でスレッドを管理するかです。ただし、他にも重要な基準があります。
イベント ループを必要としないタスク。具体的には、タスク実行中にシグナル/スロット メカニズムを使用していないタスクです。使用: QtConcurrent および QThreadPool + QRunnable。
シグナル/スロットを使用するため、イベント ループが必要なタスク。使用: Worker オブジェクトを + QThread に移動しました。