파이썬 7- 스레드 통신을 멀티 스레드

원본 링크 : http://www.cnblogs.com/linbinqiang/p/5329127.html

대부분의 경우, 쓰레드간에 서로 통신이 필요합니다. 일반적인 시나리오는 구현 프로세스의 주 스레드 구현의 진행 상황을보고 계속 필요로하는 특정 작업을 수행하는 보조 스레드입니다. 상기 조건 변수 동기화 스레드 간의 통신 (threading.Condition 메소드 통지)에 관련되었다. 더 일반적인 방법은 threading.Event 객체를 사용하는 것입니다.
threading.Event이 알림을 기다리는 스레드가 다른 스레드를 만들 수 있습니다. 어떤 내장 플래그 초기 값 False입니다. 스레드 대기하여 () 다른 스레드 때까지 대기 상태로 방법은 내장 플래그 세트 () 메소드가 작동을 재개를 기다리는 모든 스레드의 사실, 이벤트 알림 상태로 설정되어 호출합니다. 또한 내장 된 상태 객체에 의해 Envent는 isset의 현재 값을 쿼리 () 방법이 될 수 있습니다.

import threading
import random
import time

class MyThread(threading.Thread):
    def __init__(self,threadName,event):
        threading.Thread.__init__(self,name=threadName)
        self.threadEvent = event

    def run(self):
        print "%s is ready" % self.name
        self.threadEvent.wait()
        print "%s run!" % self.name

sinal = threading.Event()
for i in range(10):
    t = MyThread(str(i),sinal)
    t.start()

sinal.set()

  

HTTPS : //www.cnblogs.com/linbinqiang/p/5329127.html 재현

추천

출처blog.csdn.net/weixin_30291791/article/details/94788083