首页 > 系统相关 >极客编程python入门-多进程

极客编程python入门-多进程

时间:2023-01-02 11:00:38浏览次数:43  
标签:fork 极客 python 编程 pid process getpid 进程 os


多进程


在Python程序中轻松创建子进程:


import os

print('Process (%s) start...' % os.getpid())
# Only works on Unix/Linux/Mac:
pid = os.fork()
if pid == 0:
print('I am child process (%s) and my parent is %s.' % (os.getpid(), os.getppid()))
else:
print('I (%s) just created a child process (%s).' % (os.getpid(), pid))


极客编程python入门-多进程_进程间通信


有了fork调用,一个进程在接到新任务时就可以复制出一个子进程来处理新任务,常见的Apache服务器就是由父进程监听端口,每当有新的http请求时,就fork出子进程来处理新的http请求。


子进程


subprocess模块可以让我们非常方便地启动一个子进程,然后控制其输入和输出。


小结


在Unix/Linux下,可以使用​​fork()​​调用实现多进程。

要实现跨平台的多进程,可以使用​​multiprocessing​​模块。

进程间通信是通过​​Queue​​​、​​Pipes​​等实现的。

标签:fork,极客,python,编程,pid,process,getpid,进程,os
From: https://blog.51cto.com/apple0/5983508

相关文章

  • python中如何获取主机的ip和主机名
    使用python中的socket库,可以轻松获取主机ip和主机名。一、获取主机名 importsockethostname=socket.gethostname()print(hostname)#DESKTOP-AAI12V0 ......
  • python中的platform模块
     platform模块给我们提供了很多方法去获取操作系统的信息;importplatformprint(platform.platform())#获取操作系统名称和版本号:macOS-10.14.6-x86_64-i386-64bitpri......
  • A*算法利用不在位数作为评价指标解决八数码问题(python)
    一、  程序设计思想:在一个3*3的方棋盘上放置着1,2,3,4,5,6,7,8总共八个数码,每个数码占一格,且有一个空格。这些数码可以在棋盘上移动,其移动规则是:与空格相邻的数码方......
  • A*算法利用曼哈顿距离作为评价指标解决八数码问题(python)
    1.题目说明在一个3*3的方棋盘上放置着1,2,3,4,5,6,7,8八个数码,每个数码占一格,且有一个空格。这些数码可以在棋盘上移动,其移动规则是:与空格相邻的数码方格可以移入空格......
  • STC15 MCU 串口编程 proteus 仿真 SDCC51
    1.STC单片机接口比传统的51单片机多得多,学起来更有意思。据说这种单片机得实际使用也很多,价格便宜,可以用来DIY。2.KEIL是比较流行的编程工具,有点大,还需要license之类的,对......
  • Python3 学习~
    Python3heapq#默认小根堆Heap=[]#初始化为空heapq.heapify(list)#将一个list原地转换为堆,线性时间heapq.heappush(Heap,item)#插入一个元素item,类型随意x......
  • Python之路【第九篇】:Python操作 RabbitMQ、Redis、Memcache、SQLAlchemy
    1.MemcachedMemcached是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、......
  • 【win编程0003】- 动态库
     动态链接库(dynamiclinklibrary)介绍代码放到exe中,肯定会造成磁盘冗余;电脑ABCD四个软件,lib加入到代码中不是在编译期进入的,而是在运行期(A进程启动,把dll加入到A进程......
  • python设计模式
    设计模式设计模式中使用了一个接口类abc:AbstractBaseClasses作用:在代码中定义和使用抽象基类进行API检查。​为什么使用abc模块Abstractbaseclasses由一组接口组......
  • Python__20-- 常见Bug
    1Bug一杯茶,一包烟,一个Bug改一天程序错误,即英文的Bug,也称为缺陷、臭虫,是指在软件运行中因为程序本身有错误而造成的功能不正常、死机、数据丢失、非正常中断等现象。早期的......