7.5.5 Event オブジェクト
これはスレッド間で通信するための最も簡単なメカニズムの1つです:
あるスレッドがイベントを発信し、他のスレッドがそれを待ちます。
イベントオブジェクトは、set()メソッドでTrueにセットし、
clear()メソッドでFalseにリセットする、内部フラグを管理します。
wait()メソッドはフラグがTrueになるまでブロックします。
-
内部フラグをFalseに初期化します。
-
内部フラグがTrueの場合、そしてTrueの場合のみ、Trueを返します。
-
内部フラグをTrueにセットします。
それがTrueになるのを待っている全てのスレッドは起こされます。
wait()を呼出したスレッドは、いったんフラグがTrueになると
全てがブロックされなくなります。
-
内部フラグをFalseにリセットします。
その後、set()が内部フラグを再びTrueにセットするために呼出されるまで、
wait()を呼出したスレッドはブロックされるでしょう。
-
内部フラグがTrueになるまでブロックします。
もし内部フラグがTrueだった場合、直ちに返ります。
そうでなかった場合、他のスレッドがset()を呼出し
フラグをTrueにセットするまで、あるいはオプションtimeoutが
発生するまで、ブロックします。
timeout引数がNone
以外で与えられたとき、
それはタイムアウトを秒(またはその分数)で指定する浮動小数です。
Release 2.3.4, documentation updated on 平成17年4月6日.
ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。