from threading import Thread,Semaphore
import time
import random
sm = Semaphore(5)
def task(name):
sm.acquire()
print(’%s 正在使用’%name)
time.sleep(random.randint(1,5))
print(’%s 使用完毕’%name)
sm.release()
if name == ‘main’:
for i in range(20):
t = Thread(target=task,args=(‘工作者%s’ % i,))
t.start()