Python 使用 Semaphore 限制线程最大数量

Owen
Owen
发布时间:2026-10-13 | 3人浏览过
原创

本文介绍如何在 Python 中使用 threading.Semaphore 来限制同时运行的最大线程数量。通过示例代码展示如何初始化信号量并在线程函数中使用 with 语句进行资源锁定,从而有效控制并发度,避免系统资源过载。

具体实现方式如下所示:

import threading
import time
 
sem=threading.Semaphore(4) #限制线程的最大数量为4个
 
def gothread():
  with sem: #锁定线程的最大数量
    for i in range(8):
      print(threading.current_thread().name,i)
      time.sleep(1)
 
for i in range(5):
  threading.Thread(target=gothread).start()

以上就是 Python 中利用 Semaphore 限制线程最大数量的完整示例。希望这段内容能为您提供参考,如果您觉得有用,欢迎继续支持本站。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表