现在的位置: 主页 > 商讯 > 文章正文

python--多线程编程中的线程间通信的问题--变量同步锁

作者:成都昌德装饰工程有限公司 来源:www.cdchangde.com 发布时间:2017-09-08 18:10:10
python--多线程编程中的线程间通信的问题--变量同步锁

python--多线程编程中的线程间通信的问题--变量同步锁,我定义两个线程类,第一个用来不停的累加一个全局变量,第二个用来检测那个全局变量是否累加到5,如果累加到了5,就输出,并停止线程。

import threading import time counter = 0 mutex = threading.Lock() class MyThread(threading.Thread): def __init__(self): threading.Thread.__init__(self) def run(self): global counter, mutex while True: time.sleep(1); if mutex.acquire(): counter += 1 if counter == 10: break print "I am %s, set counter:%s" % (self.name, counter) mutex.release() class ZyThread(threading.Thread): def __init__(self): threading.Thread.__init__(self) def run(self): global counter,mutex while True: time.sleep(1) if mutex.acquire(): if counter == 5: print "I am %s, Now is Number5" % (self.name) mutex.release() break print "I am %s------------" % (self.name) mutex.release() if __name__ == "__main__": my_thread = MyThread() my_thread.start() zy_thread = ZyThread() zy_thread.start()

结果:

这里写图片描述

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:潜江网站建设 http://qianjiang.45qun.com

上一篇:jquery.cookie的使用 下一篇:最后一页