※ ChatGPTを利用し、要約された質問です(原文:C++ Thread::Sleep()について)
C++ Thread::Sleep()について
このQ&Aのポイント
C++のThread::Sleep()について質問です。
処理中に画像が少し歪んでしまう現象が起きています。
Sleepを削除すると即座に次の処理に移行してしまうため、数秒停止させたいと考えていますが、方法がわかりません。
RunTimer = gcnew Timer();
RunTimer->Interval = 50;
RunTimer->Tick += gcnew EventHandler(this, &RunTick);
RunTimer->Enabled = true;
・・・処理・・・
RunTimer->Enabled = false;
System::Threading::Thread::Sleep(1000);
としているのですが、数コマ動いてしまいます。
処理は3枚の画像を差し替えて動かしているのですが、即座にスリープがかからず、
画像が少し歪んでしまいます。
ソースが長く、どこを記載すれば良いのか解らず、かなり抜粋しましたが、
TimerのTickで画像を入れ替えて、歩いている様にみせかけています。
一時停止後、改めて処理を始めようと思っているのですが、
なぜだか、少し動いてしまします。
Sleepを削除すると、うまく止まるのですが、即座に次の処理に移行してしまう為、数秒停止させたいと考えています。
System::Threading::Thread::Sleep(1000);
だけでは、即座に止める事はできないものでしょうか?
また、TimerのTickを数秒止める事はできるものでしょうか?
ご存じの方、アドバイスよろしくお願いいたします。