2

メインスレッドと他の 3 つのスレッド (2 つの QThreads と QtConcurrent::run() で作成された 1 つ) によって呼び出されるメソッドを持つクラスがあります。このメソッド内で、時々シグナルを発します。呼び出し元のスレッドに属するシグナルを発行していないため、問題が発生する可能性がありますか?

4

1 に答える 1

3

はい、これで全然OKです。QT はスレッド間通信を透過的に行います。起動する必要があるスロットが別のスレッドにある場合、シグナルはキューに入れられ、宛先スレッドがイベント ループに入ったときに受信されます。

試してみて、デバッガーで何が起こるかを確認してください。

于 2010-02-03T20:00:47.100 に答える