0

前回の説明がわかりにくかったので、もう一度やり直します。

Lego NXTセンサーから40ミリ秒ごとに値を取得するセンサークラスを持つプログラムがあります。仮想世界でopenglを使用して1ミリ秒ごとに車を描画して移動する別の描画クラス(同じスレッドで実行されていると思います)もあります。ここでの問題は、センサーが情報を取得するたびに車が非常に遅く動きが遅いことですが、センサーがオフでデータの取得と入力が行われないと、車はスムーズに走行します。この問題を解決するにはどうすればよいですか。別のスレッドを作成する必要があると思いますが、その方法がわかりません。

注: センサーは車とは何の関係もありません。

4

1 に答える 1

2

スレッド化について一般的な答えを出すのは簡単ではありません。Qt には、スレッド化を実装するためのさまざまなクラスが用意されているため、例を参照することをお勧めします。一般に、センサーモジュール/クラスであると思われるブロッキングAPIがある場合を除いて、Qtでスレッド化する必要はありません。

これは、別のスレッドで実行されるオブジェクトを作成する方法をライブで示す素晴らしいビデオです。LenghtyOperationセンサーからデータを読み取り、信号を送信して GUI スレッドを更新するクラスとして、デモにを実装することができます。

ここに別のリンクがあります:頭痛のないスレッド化

于 2011-04-13T18:53:47.450 に答える