码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【Python零基础入门篇 · 34】:进程间的通信-Queue、进程池的构建


    文章目录

    • 进程间的通信-Queue
        • 队列的基本操作
    • 进程池的构建
        • 概念
        • 方法

    进程间的通信-Queue


    可以使用multiprocessing模块的Queue实现了进程之间的数据传递,Queue本身是一个消息队列。

    初始化Queue()对象时(例如:q=Queue()),若括号中没有指定最大可接收的消息数量,或数量为负值,那么就代表可接受的消息数量没有上限(直到内存的尽头)。

    队列的基本操作

    Queue.put():入队,放入数据
    Queue.get():出队,取出数据
    Queue.size():返回当前队列包含的消息数量
    Queue.empty():如果队列为空,返回True,反之False ;
    Queue.full():如果队列满了,返回True, 反之False。
    在这里插入图片描述

    • 进程操作队列,直接使用进程自带的Queue
      在这里插入图片描述

    进程池的构建


    当需要创建的子进程数量不多时,可以直接利用multiprocessing中的Process动态成生多个进程,但如果是上百甚至上千个目标,手动的去创建进程的工作量巨大,此时就可以用到multiprocessing模块提供的Pool方法。

    初始化Pool时,可以指定一个最大进程数,当有新的请求提交到Pool中时,如果池还没有满,那么就会创建一个新的进程用来执行该请求;但如果池中的进程数已经达到指定的最大值,那么该请求就会等待,直到池中有进程结束,才会用之前的进程来执行新的任务。

    概念

    定于一个进程池,在里面放上固定数量的进程,有需求就拿池子中的进程来处理任务,处理完毕,进程并不关闭,而是将这个进程再放回池子中继续等待任务。

    方法

    • p.apply_async(调用的目标,传递的值)——异步非阻塞,不同等待当前进程执行,随时根据系统调度来进行程序切换,如果异步提交任务,等进程池内任务处理完,需要用get()来收集结果.
    • p.close()——关闭进程池
    • p.join()——主进程阻塞,等待所有工作进程退出,只能再close()后调用
      在这里插入图片描述
  • 相关阅读:
    web前端页面基础
    PHP代码审计入门-DVWA靶场命令注入篇
    备忘录APP源码和设计报告
    LeetCode //C - 117. Populating Next Right Pointers in Each Node II
    从0开始设计JVM ,忘记名词跟上思路一次搞懂
    Unity中的协程
    PCB设计中的邮票孔封装如何制作?
    YOLO目标检测——VOC2007数据集+已标注VOC格式标签下载分享
    关于继承,你了解多少?
    gcc编译工具
  • 原文地址:https://blog.csdn.net/Oh_Python/article/details/126813311
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号