Pythonのマルチスレッド・イベント(スレッド間通信)

#イベントは、複数のスレッド間の通信であります

インポートスレッド、時間

 

クラスボス(threading.Thread):

 

  デフ(自己)を実行します。

    印刷(「ボスは言った:今すぐ上から、私たちは996人の友人、喝采を持っています」)

    イベントセット#

    印刷(event.isSet())

    #eventが設定された後event.set()、event.waitにおける複数のスレッド(後プログラム)を実行するために活性化されます

    time.sleep(3)

    印刷(「ボス:我々は仕事を終え、996を持っていません」)

    印刷(event.isSet())

    event.set()

 

クラスワーカー(threading.Thread):

  デフ(自己)を実行します。

    event.wait()

    (「:あなたがたはまた、996を行い、ああ母ワーカー」)を印刷

    event.clear()

    event.wait()

    印刷(「労働者:ええ......」)

 

__name__ == "__main__" の場合:

  イベント= threading.Event()

  スレッド= []

  範囲内のiについて(5):

    threads.append(労働者())

  threads.append(ボス())

  スレッドでのトンのために:

    t.start()

 

#上記の手順を実行し、次の出力を得ることができます

ボスは言った:今すぐ上から、私たちは996人の友人、応援しています

ワーカー:ああ母、あなたがたも996を行います

ワーカー:ああ母、あなたがたも996を行います

ワーカー:ああ母、あなたがたも996を行います

ワーカー:ああ母、あなたがたも996を行います

ワーカー:ああ母、あなたがたも996を行います

ボス:私たちは仕事を終え、我々は996を持っていません

ワーカー:そうそう......

ワーカー:そうそう......

ワーカー:そうそう......

ワーカー:そうそう......

ワーカー:そうそう......

 

ボス最初に話すために、スレッド、およびevent.wait後のプログラムで活性化セットによって、イベント・セットの状態、

待機状態で5作品初のスレッドが、唯一のプログラムが実行されるの後ろにイベントステータスをリセットイベントの後に実行、設定された後まで待つと、再び待機状態に入ります。

 

 

 

    

 

  

おすすめ

転載: www.cnblogs.com/laofang/p/12120295.html