from threading import Thread,Lock
from time import sleepclass Task1(Thread):def run(self):while True:if lock1.acquire():print("------Task 1 -----")sleep(0.5)lock2.release()class Task2(Thread):def run(self):while True:if lock2.acquire():print("------Task 2 -----")sleep(0.5)lock3.release()class Task3(Thread):def run(self):while True:if lock3.acquire():print("------Task 3 -----")sleep(0.5)lock1.release()#使用Lock创建出的锁默认没有“锁上”
lock1 = Lock()
#创建另外一把锁,并且“锁上”
lock2 = Lock()
lock2.acquire()
#创建另外一把锁,并且“锁上”
lock3 = Lock()
lock3.acquire()t1 = Task1()
t2 = Task2()
t3 = Task3()t1.start()
t2.start()
t3.start()
运行结果:------Task 1 -----
------Task 2 -----
------Task 3 -----
------Task 1 -----
------Task 2 -----
------Task 3 -----
------Task 1 -----
------Task 2 -----
------Task 3 -----
------Task 1 -----
------Task 2 -----
------Task 3 -----
------Task 1 -----
------Task 2 -----
------Task 3 -----
...省略...
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态