import threading
import time
num=0
mutex=threading.Lock() #创建一个锁类
class Mythread(threading.Thread): #自定义线程类,继承Thread类
def run(self):
global num
if mutex.acquire(1): #锁住成功继续干活,没有锁住成功就一直等待,1代表独占
for i in range(1000000): #锁定期间,其他线程不可以干活
num+=1
mutex.release() #释放锁
print(num)
mythread=[]
for i in range(5):
t=Mythread()
t.start()
mythread.append(t)
for t in mythread:
t.join()
print("game over")
Python 类线程,用Lock解决线程冲突
最新推荐文章于 2022-10-16 01:45:08 发布