判別させながら、5秒待ちたい – プログラミング – Home

判別させながら、5秒待ちたい
 
通知
すべてクリア

判別させながら、5秒待ちたい


タカオ
 タカオ
(@タカオ)
ゲスト
結合: 20年前
投稿: 5
Topic starter  

こんばんは。
VisualC++6.0 SP5での質問です。
ある計器から5秒間データを取り込み、このデータがある一定値以上になると、イベント
が起こるようにプログラムしているのですが、この5秒間の中で常に一定値以上になるか
判別させるために、whileを使っていました。
そうすると、CPU使用率がものすごく上がってしまい、どうにかしたいです。また、
forで回しても同様な状態です。
5秒間、判別し続けるというのに何か最適な方法がありませんでしょうか。ご教授くださ
い。


引用解決済
トピックタグ
Ban
 Ban
(@ban)
Prominent Member
結合: 5年前
投稿: 776
 

ループの間にでも
::Sleep(1);
と書いてみてください。

可能なら、イベント待ちでブロッキングがお勧めですが、
このあたりは機器次第でしょうから。


返信引用
タカオ
 タカオ
(@タカオ)
ゲスト
結合: 20年前
投稿: 5
Topic starter  

ありがとうございます。
明日早速試させていただきます。


返信引用
Ban
 Ban
(@ban)
Prominent Member
結合: 5年前
投稿: 776
 

追加補足

もしもそのループを、例えば UI スレッド (ウィンドウがあるメインスレッドなど)に
書いているのであれば、「メッセージループ」もあわせて入れてあげてください。

メッセージループについては、この用語と PeekMessage あたりを調べてもらえれば
説明が見つかるでしょう。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました