摘要:
下文讲述Python中多线程信号量的设置方法分享,如下所示:
信号量(BoundedSemaphore类):
用于设置多线程同时可运行的线程数
实现思路:
使用BoundedSemaphore方法即可设置多线程的信号量
例:
Python3中多线程信号量的示例分享
#maomao365.com
#多线程信号量的示例说明
import threading
import time
def run(n, semaphore):
semaphore.acquire() #加锁
time.sleep(1)
print("进程数:%s\n" % n)
semaphore.release() #释放
if __name__ == '__main__':
num = 0
semaphore = threading.BoundedSemaphore(5) # 最多允许5个线程同时运行
for i in range(22):
t = threading.Thread(target=run, args=("t-%s" % i, semaphore))
t.start()
while threading.active_count() != 1:
pass # print threading.active_count()
else:
print('-----所有线程运行完毕!-----')
Python设置多线程同时运行最大线程数的示例分享