歩き遍路 平成19年春(J1) 記録の準備

Vc++・MFCのワーカスレッドで
         PostMessage()の実行

 Vc++・MFCのワーカスレッドでPostMessage()を実行しました。パソコンで長時間の処理をさせる場合、長時間の処理はスレッドモードで、ユーザーインタフェースはノーマルモードで処理することが多く有ります。 しかし、スレッドモードで処理してる途中過程を見る場合はどうするのでしょうか?
 スレッドモードで処理してる途中過程を見るには、スレッドモードから途中過程をノーマルモードに知らせる方法が考えられます。
 ここでは、ワーカスレッドでPostMessage()を実行する事を目指して実験しました。

●動きと Spy++でユーザーメッセージをモニタ

 次は実験の動作です。その下は、表示画面と、Spy++でユーザーメッセージをモニタした内容です。

 マウスの右ボタンを押下 → AfxBeginThread()関数実行 → スレッドモードに移行 → PostMessage()実行 → メッセージ発行 → メッセージマップを参照して実行する関数に移行 → 呼ばれた関数で表示
 尚、呼ばれた関数で表示する内容は、スレッドモードでカウントした値をメッセージに添付した引数です。
 

 8 が表示されています。




 Spy++でユーザーメッセージをモニタした結果です。各行末の値が進んでいます。






●動作概要とプログラムリスト

 動作概要とプログラムリストを下記します。









ホームへ戻る