import threading
import sys
import time
def printJ():
for i in range(1, 101):
if i % 2 != 0:
# 获取对方的锁,释放自己的锁
lockb.acquire()
print(i)
#释放缓冲区
sys.stdout.flush()
locka.release()
time.sleep(0.2)
def printO():
for i in range(1,101):
if i % 2 == 0:
locka.acquire()
print(i)
sys.stdout.flush()
lockb.release()
time.sleep(0.2)
if __name__ == '__main__':
# 定义两个互斥锁
locka = threading.Lock()
lockb = threading.Lock()
# 定义两个线程
t1 = threading.Thread(target=printJ)
t2 = threading.Thread(target=printO)
locka.acquire()
t1.start()
t2.start()
Python多线程交替打印1~100间的奇偶数
最新推荐文章于 2023-10-15 12:52:24 发布