18

QThreads と QRunnable の違いは何ですか?

いつ QThread と QRunnable を使用する必要がありますか?

4

3 に答える 3

1

QThreadPool と QThread
のどちらを使用するかを選択する Qt フレームワークには、マルチスレッド用のツールが多数用意されています。適切なツールを選択するのは最初は難しいかもしれませんが、実際には、決定木は 2 つのオプションから構成されています。つまり、Qt にスレッドを管理してもらうか、自分でスレッドを管理するかです。ただし、他にも重要な基準があります。

イベント ループを必要としないタスク。具体的には、タスク実行中にシグナル/スロット メカニズムを使用していないタスクです。使用: QtConcurrent および QThreadPool + QRunnable。

シグナル/スロットを使用するため、イベント ループが必要なタスク。使用: Worker オブジェクトを + QThread に移動しました。

詳細な説明については、リンクを参照してください。qt スレッドについてよく読んでください。

于 2020-12-21T13:11:42.820 に答える