当前位置: 首页 > news >正文

网站建设 字体版权app设计欣赏

网站建设 字体版权,app设计欣赏,用ps做的网站怎么发布,怎么做建设网站ThreadPoolExecutor 一、线程池机制 线程池通过预先创建一组空闲线程(工作线程),维护任务队列,实现线程复用。当新任务到达时,线程池会将任务放入队列,由空闲线程自动获取执行,避免了频繁创建/…

ThreadPoolExecutor

一、线程池机制

线程池通过预先创建一组空闲线程(工作线程),维护任务队列,实现线程复用。当新任务到达时,线程池会将任务放入队列,由空闲线程自动获取执行,避免了频繁创建/销毁线程的开销

二、ThreadPoolExecutor基础用法🚀

2.1 快速入门模板

from concurrent.futures import ThreadPoolExecutor
import timedef task(n):print(f"处理任务 {n}")time.sleep(1)return n * nwith ThreadPoolExecutor(max_workers=3) as executor:futures = [executor.submit(task, i) for i in range(5)]results = [f.result() for f in futures]print(f"结果: {results}")  # 输出: [0, 1, 4, 9, 16]

三、ThreadPoolExecutor 初始化参数详解

1. max_workers (核心参数)
作用:指定线程池中最大线程数
默认值:min(32, (os.cpu_count() or 1) + 4)(基于 CPU 核心数动态计算)
建议:根据任务类型调整(I/O 密集型可适当增大,CPU 密集型建议接近 CPU 核心数)
2. thread_name_prefix (可选)
作用:设置线程名称前缀,便于调试
示例:前缀为 “DownloadPool-” → 线程名称为 DownloadPool-0, DownloadPool-1…
3. initializer (可选)
作用:线程池中每个工作线程创建前,执行的初始化函数(常用于设置线程局部资源)
典型场景:初始化数据库连接、设置线程局部存储(Thread-Local Storage)
4. initargs (可选)
作用:传递给 initializer 的参数(需为元组类型)
在这里插入图片描述

与Java线程池对比

看到python 线程池与跟Java的线程池在创建对象时有很大不同。暴露给用户的参数太少了。
不同点有以下几点:

  1. 线程池没有最小核心线程池的概念
  2. 线程池的队列是内置的,用户不可以调整,还是无界队列,使用不当容易OOM
  3. 线程池用的工作线程是没有限制的时间,也就是说会一直阻塞获取
  4. 因为使用的是无界队列,所以也就没有了拒绝策略

接下来让我们看一下python 线程池提的接口
这是自身的的=在这里插入图片描述
这是父类的在这里插入图片描述
可以看到线程池对外提供了一个submit 提交任务的方法。
让我们看一下submit的处理流程。
在这里插入图片描述
可以看到具体的逻辑应该在_adjust_thread_count()方法中。继续追踪
在这里插入图片描述
接下来让我们看一下工作线程的处理逻辑。t.start() 其实运行的就是_worke函数。继续追踪
在这里插入图片描述
好了,到此整个提交逻辑代码就追踪完了。

五、总结:

线程池的执行主流程如下:

  1. 线程池提交任务

  2. 将任务封装成workItem对象

  3. 将workerItem对象保存到队列中

  4. 判读当前工作线程总数是否小于设置的最大工作线程
    是:创建工作线程 => start方法启动线程 => 执行_worke方法 => 调用初始化函数,进行数据初始化(只会执行一次) => 循环从队列中获取任务执行。

    否:不创建任务

备注:以上是我自己看源码理解的,如果有不对的地方,还请道友指出。

http://www.dtcms.com/a/494215.html

相关文章:

  • 创可贴网页设计网站微网站工程案例展示
  • 1000学习做网站贵吗wordpress手动上传图片
  • 麦吉太原网站建设丽怎么代理营销网站开发系统
  • wordpress网站360搜索收录网站开发程序用什么好
  • 移动端企业网站泉州网站建设方案优化
  • 企业网站每年的费用长春新冠最新情况
  • 网站制作设计网站死链检查
  • 网站备案成功后怎么wordpress 移动适配
  • 简述网站的建站流程vs2008网站开发
  • 网站seo优化运营东营黄页企业名录
  • 傻瓜式网站开发软件低价网站建设案例
  • 360浏览器打不开90设计网站购物商城网站开发
  • 贵州茅台酒股份有限公司网站门户网站都有哪些内容
  • 学校微网站模板单位网站建设实施方案
  • 盐城公司网站建设电话商标设计生成器
  • 建立网站请示网站营销策略
  • 邯郸移动网站建设费用win的wordpress
  • 呼和浩特网站推广建设电器网站目的及功能定位
  • 个人网站实现与设计论文海淀网站开发公司
  • 标准网站有哪些郑州市网站和公众号建设
  • 全景网站如何做网站底部优化字
  • 心理咨询网站开发网上注册公司营业执照流程
  • 招聘网站哪个好手机网站怎么制作
  • 推广平台网站公司建设网站记什么费用
  • 广州站在哪里产品设计和工业设计有什么区别
  • p2p金融网站开发方案将wordpress压缩包解压至一个空文件夹_并上传它.
  • 网站开发策划个人简历精通网站建设 百度云
  • 建设优化一个网站步骤网页设计个人页面
  • 网站的建设 教学计划wordpress 跳转首页
  • 盐城网盐城网站建设站建设武侯区网站建设哪里好点