猫型iPS細胞研究所

Windows、Linux、iOS、DB、Network

Windows

c# EventWaitHandle が反応しない!?

投稿日:2013年9月23日 更新日:

スレッドを利用したプログラムで、
スレッド側での処理を待たせて、必要に応じて開始する場合には、
1.特定のフラグをポーリングする
2.EventWaitHandle を利用する。
の2つが考えられると思います。
ポーリングは処理の無駄に感じてしまうのでEventWaitHandleを使用していました。
が、しばらくたつとEventWaitHandleをset()してもWaitOneのところから開始しない状態になりました。

よくよく調べてみると、EventWaitHandle.WaitOne()にはどうやらタイムアウトがあるようです。
EventWaitHandleを使って別スレッドで処理の開始を待たせる場合には十分注意が必用です。

ちなみにタイムアウトをなしにする場合にはEventWaitHandle.WaitOne(-1)とします。

Gooleアドセンス用336

Gooleアドセンス用336

-Windows
-,

執筆者:

関連記事

windows

Windowsのライセンス認証でこのプロダクトキーは既に使用されていますと表示される

自作PCでマザーボードを交換しました。 OSはvistaです。 するとコンピューター>プロパティ のライセンス認証をしようとすると、 『このプロダクトキーは既に使用されています』 と表示されて認証でき …

windows

EXCELでセルの値を比較する時の注意点

=IF(A2=B2,"同じ","異なる") と言った関数を私はよく使用します。 テストデータの比較には、EXCELは非常に役に立ちます。 そんなことしてるのは私 …

windows

Windows8.1でParagon HFS+ for Windows 10.0 (Japanese)が使えない

Windows8.1にアップデートしたら、 HFS+の外付けハードディスクを認識しなくなってしまいました。 サポートにメールをしたところ、 既に新しいバージョンがアップデートされていた模様。 新バージ …

apple

iPhoneにはハードウエアの安全な取り外しが表示されない!?

Windows8にしたところ、 iPhoneをUSBで接続しても、ハードウエアの安全な取り外しが表示されませんでした。 どうやらiPhoneはメディアとしては扱われず、「ハードウェアを安全に取り外して …

windows

Windowsのrouteに設定するインターフェイスのindex番号の確認方法

routeを追加する windowsでルートを登録するのは 宛先:192.168.2.10/255.255.255.0 Gateway:129.168.0.254 インターフェイス:0x001 の場合 …