信号量

时光怂恿深爱的人放手 提交于 2019-11-27 08:09:09
# 信号量可能在不同领域对应不同的知识点
'''
互斥锁:代表一个坑位
信号量:代表一个公共厕所,有多个坑位
'''
from threading import Semaphore,Thread
import time
import random

sm = Semaphore(4)  # 制造一个有五个坑位的厕所


def task(name):
    sm.acquire()
    print('%s 抢到了坑位' % name)
    time.sleep(random.randint(1, 3))
    sm.release()


if __name__ == '__main__':
    for i in range(20):
        t = Thread(target=task, args=(i,))
        t.start()

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!