import threading
t1_semaphore = threading.Semaphore(1)
t2_semaphore = threading.Semaphore(0)
def T1(n, m, name):
for i in range(n):
if i % 2 == m:
t1_semaphore.acquire()
print(name, ':::: ', i)
t2_semaphore.release()
def T2(n, m, name):
for i in range(n):
if i % 2 == m:
t2_semaphore.acquire()
print(name, ':::: ', i)
t1_semaphore.release()
t1 = threading.Thread(target=T1, args=(5, 0, 'name_1'))
t2 = threading.Thread(target=T2, args=(5, 1, 'name_2'))
t1.start()
t2.start()
两个线程交替运行
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 面试资料领取只需: 点击这里领取!!!![https://jq.qq.com/?_wv=1027&k=bNqaSL...
- 今天面试阿里被问到一个简单的多线程问题,脑子里第一个闪现的是wait()和notify(),写代码的时候又蹦出些其...