PostMessageの処理時間


ken  2013-07-09 20:03:46  No: 73752

現在visual studio2008でmfcを使用したダイアログベースのアプリを作成しているのですが、
処理時間に気を遣わなくてはいけないないので色々な標準関数の処理にかかる時間を調べていたところ、
PostMessageにかかる処理が平均200マイクロくらいなんですが、稀に2000マイクロとかかかったりしています。
計測方法は高分解能パフォーマンスカウンタを使用した単純な計測です。

こんな感じで計測しました。

時間ゲットa
PostMessage();
時間ゲットb
処理時間 = b - a;

普段200マイクロくらいでできてる処理がどうして2ミリもかかってしまうことがあるのでしょうか?

以上、よろしくお願い致します。


zeek  2013-07-10 06:57:09  No: 73753

> 普段200マイクロくらいでできてる処理がどうして2ミリもかかってしまうことがあるのでしょうか?

時間ゲットa

時間ゲットb
との間で Thread が切り替わっただけでしょう。
プリエンプティブなマルチタスクOS上でいつもマイクロ単位の時間経過で特定コードを終えることができると考えること自体が不自然です。


ken  2013-07-11 20:21:43  No: 73754

zeekさん回答ありがとうございます。
少し調べてみた所おっしゃるとおりでした。
まだまだ勉強不足です、ありがとうございました。
以上


※返信する前に利用規約をご確認ください。








  このエントリーをはてなブックマークに追加