前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >并发篇-python线程池-2

并发篇-python线程池-2

作者头像
小团子
发布2019-07-18 11:00:04
5760
发布2019-07-18 11:00:04
举报
文章被收录于专栏:数据云团数据云团

主线程: 相当于生产者,只管向线程池提交任务。并不关心线程池是如何执行任务的。因此,并不关心是哪一个线程执行的这个任务。

线程池: 相当于消费者,负责接收任务,并将任务分配到一个空闲的线程中去执行。

python内置进程池

>>>执行结果

# 必须要有一个 main 测试

>>> if __name__ == "__main__":

# Pool 的实例化必须在 main 测试之下

>>>pool = Pool(2)

池的其他操作

操作一: close - 关闭提交通道,不允许再提交任务。

操作二: terminate - 中止进程池,中止所有任务。

Pool可以提供指定数量的进程供用户调用,当有新的请求提交到pool中时,如果池还没有满,那么就会创建一个新的进程用来执行该请求;

但如果池中的进程数已经达到规定最大值,那么该请求就会等待,直到池中有进程结束,才会创建新的进程来它。

>>>执行结果

# 会阻塞,知道结果产生了

>>> result = a_result.get()

使用线程池来实现并发服务器

>>>客户端

>>>执行结果

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-12-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据云团 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档