返回顶部
首页 > 资讯 > 后端开发 > Python >python 进程
  • 164
分享到

python 进程

进程python 2023-01-31 02:01:01 164人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

#fork在window下不支持import os import time import sys  pid = os.fork() if pid == 0:#子进程         time.sleep(5)         print(

#fork在window下不支持

import os
import time
import sys 

pid = os.fork()
if pid == 0:#子进程
        time.sleep(5)
        print('After 5 seconds')
        print('line%d:fork进程%d,PID=%d,父PID=%d'%(sys._getframe().f_lineno,pid,os.getpid(),os.getppid()))
else:#主进程
        print('line%d:fork进程%d,PID=%d,父PID=%d'%(sys._getframe().f_lineno,pid,os.getpid(),os.getppid()))
        pid = os.fork()
        if pid == 0:
                print('line%d:fork进程%d,PID=%d,父PID=%d'%(sys._getframe().f_lineno,pid,os.getpid(),os.getppid()))
        else:
                print('line%d:fork进程%d,PID=%d,父PID=%d'%(sys._getframe().f_lineno,pid,os.getpid(),os.getppid()))
pid = os.fork()
if pid == 0:
        print('line%d:fork进程%d,PID=%d,父PID=%d'%(sys._getframe().f_lineno,pid,os.getpid(),os.getppid()))
else:
        print('line%d:fork进程%d,PID=%d,父PID=%d'%(sys._getframe().f_lineno,pid,os.getpid(),os.getppid()))

line11:fork进程1625,PID=1624,父PID=1486

line16:fork进程1626,PID=1624,父PID=1486

line14:fork进程0,PID=1626,父PID=1624

line21:fork进程1628,PID=1626,父PID=1624

line21:fork进程1627,PID=1624,父PID=1486

line19:fork进程0,PID=1627,父PID=1624

[chaoge@localhost ~]$ line19:fork进程0,PID=1628,父PID=1

After 5 seconds

line9:fork进程0,PID=1625,父PID=1

line21:fork进程1629,PID=1625,父PID=1

line19:fork进程0,PID=1629,父PID=1625


#Process 可以跨平台

微信截图_20180107170448.png

from multiprocessing import Process
import time
import os

#子进程
def childProcess(name):
	print("子进程运行中,name=%s,pid=%d"%(name,os.getpid()))
	


if __name__ == '__main__':
	print('父进程%d.'%os.getpid())
	cp = Process(target=childProcess,args=('test',))
	print('子进程将要执行')
	cp.start()#启动进程实例
	#cp.terminate()#终止子进程
	alive = cp.is_alive()#判断进程是否活着
	print('is_alive:%s'%alive)
	cp.join()#阻塞,join([timeout]),join(2)阻塞2秒
	print('子进程结束')
	alive = cp.is_alive()#判断进程是否活着
	print('is_alive:%s'%alive)

父进程7268.

子进程将要执行

is_alive:True

子进程运行中,name=test,pid=3124

子进程结束

is_alive:False


#进程池

from multiprocessing import Pool
import os,time,random

def worker(msg):
	t_start = time.time()
	print('%s开始执行,进程号为%d'%(msg,os.getpid()))
	#random.random() 随机生成0~1之间的浮点数
	time.sleep(random.random()*2)
	t_stop = time.time()
	print(msg,"执行完毕,耗时%0.2f"%(t_stop-t_start))

if __name__ == '__main__':
	po = Pool(3)#定义一个进程池,进程数3
	for i in range(0,10):
		po.apply_async(worker,(i,))#po.apply_async(worker,(i,))非阻塞模式,po.apply(worker,(i,))阻塞模式	
	print("---start---")
	po.close()#关闭进程池
	po.join()#等待po中的所有子进程执行完,放在close之后
	print('---end---')

---start---

0开始执行,进程号为1910

2开始执行,进程号为1912

1开始执行,进程号为1911

0 执行完毕,耗时0.49

3开始执行,进程号为1910

1 执行完毕,耗时0.64

4开始执行,进程号为1911

3 执行完毕,耗时0.26

5开始执行,进程号为1910

2 执行完毕,耗时1.28

6开始执行,进程号为1912

4 执行完毕,耗时0.97

7开始执行,进程号为1911

5 执行完毕,耗时1.38

8开始执行,进程号为1910

6 执行完毕,耗时1.49

9开始执行,进程号为1912

8 执行完毕,耗时1.21

7 执行完毕,耗时1.81

9 执行完毕,耗时1.72

---end---


--结束END--

本文标题: python 进程

本文链接: https://lsjlt.com/news/187050.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python--进程
    相关概念 进程 进程:正则进行的一个过程或者说一个任务,而负责执行任务的则是CPU。进程是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统基础的结构。早期面向进程设计的计算机结构中,进程是程序...
    99+
    2023-01-30
    进程 Python
  • python 进程
    #fork在window下不支持import os import time import sys  pid = os.fork() if pid == 0:#子进程         time.sleep(5)         print(...
    99+
    2023-01-31
    进程 python
  • Python进程
    Python在2.6引入了多进程的机制,并提供了丰富的组件及api以方便编写并发应用。multiprocessing包的组件Process, Queue, Pipe, Lock等组件提供了与多线程类似的功能。使用这些组件,可以方便地编写多进...
    99+
    2023-01-31
    进程 Python
  • Python进程锁和进程池
    进程锁进程与进程之间是独立的,为何需要锁?对于进程,屏幕的输出只有一个,此时就涉及到资源的竞争。在Linux的Python2.x中可能出现问题。这仅仅是一种情况,多个进程之间虽然是独立的,但仅限于内存和运算,如果涉及到其它一些资源,就可能存...
    99+
    2023-01-31
    进程 Python
  • Python进程、线程
    1.线程启动 def run(n): print('%s in thread...'%n) t=threading.Thread(target=run,args=(n,)) t.start #线程等待 t.join 2.多线程同时...
    99+
    2023-01-31
    线程 进程 Python
  • Python 进程,获取进程id( o
    import os pid=os.fork() #fork反复拷贝 if pid==0: print("A",os.getpid(),os.getppid()) else: print("B",os.getpid(),o...
    99+
    2023-01-31
    进程 Python id
  • Python的进程
    说明:本文是基于Py2.X环境,3.X在我电脑上出了些问题。两者差别并不大。 Python实现多进程的方式主要有两种:一种方法是使用os模块中的fork方法; 另一种是使用multiprocessing模块。这两种方法的区别在于前者仅...
    99+
    2023-01-31
    进程 Python
  • Python 多进程
    #_*_coding:utf-8_*_ __author__ = 'jieli' import time import multiprocessing ''' 线程多锁是不需要当成参数传多,因为线程之间是共享内存多。 但是进程之间多锁...
    99+
    2023-01-31
    进程 Python
  • Python -- 多进程
    进程通信 方式一、共享内存(进程安全,效率高) 共享变量:multiprocessing.Value共享数组:multiprocessing.Array  方式二、Manager对象: Mananger 包括:list, dict, Na...
    99+
    2023-01-31
    进程 Python
  • python多进程
    第一种开启进程方式#!/usr/bin/python # -*- coding:utf-8 -*- from multiprocessing import Process import time, random, os # print(o...
    99+
    2023-01-31
    进程 python
  • python之线程、进程
      进程:资源的集合  线程:操作CPU的最小调试单位    最简单的多线程实例如下:#!/usr/bin/python #Author:sean #线程有2种调用方式,如下: #直接调用 import threading import ...
    99+
    2023-01-31
    线程 进程 python
  • python多进程编程
    最近开始学习PYTHON编程语言,详细参照《python绝技运用Python成为顶级***》。在学习过程第一章节中,编写破解LINUX shadow文件时,想利用多线程加快破解速度。主机运行环境为WINDOWS下的VM WORKSTATIO...
    99+
    2023-01-31
    进程 python
  • Python进程/线程/协程
    第1章 操作系统历史1.1为什么要有操作系统?程序员无法把所有的硬件操作细节全部了解到,管理这些硬件并且加以优化使用时非常繁琐的工作,这个繁琐的工作就是由操作系统来干的,有了它,程序员就从这些繁琐的工作中解脱了出来,只需要考虑自己的应用软件...
    99+
    2023-01-31
    线程 进程 Python
  • Python的进程及进程池详解
    目录进程进程和程序进程的状态Python中的进程创建⼦进程全局变量问题守护进程进程池总结进程 进程是操作系统分配资源的基本单元,是程序隔离的边界。 进程和程序 程序只是一组指令的集合...
    99+
    2024-04-02
  • 初遇python进程
    计算机硬件组成   主板    固化(寄存器,是直接和cpu进行交互的一个硬件)   cpu     中央处理器:计算(数字计算和逻辑计算)和控制(控制所有硬件协调工作)   存储    硬盘,内存   输入设备  键盘,鼠标,话筒   ...
    99+
    2023-01-30
    进程 初遇 python
  • python之多进程
    一、multiprocessing模块 python中的多线程无法利用多核优势,如果想要充分地使用多核cpu的资源(os.cpu_count()查看),在python中大部分情况需要使用多进程。python提供了multiprocessi...
    99+
    2023-01-30
    之多 进程 python
  • python多进程—multiproce
    一、进程    python中提供多进程包:multiprocessing,支持子进程,通信,共享内存,执行不同形式的同步,提供了Process、Pipi、Lock等组件    多进程和多线程区别:  多线程使用的是CPU的一个核,适合IO...
    99+
    2023-01-31
    进程 python multiproce
  • python fork()多进程
    一、理解fork() fork()是一个绝对唯一的调用。Python中的大多数函数会之返回一次,因为sys.exit()会终止程序,所以它就不会返回。相比之下,Python的os.fork()是唯一返回两次的函数,任何返回两次的函数,在某...
    99+
    2023-01-31
    进程 python fork
  • Python进程学习
    线程及进程概念可自行学习 Unix/Linux操作系统提供了一个fork()系统调用,它非常特殊。普通的函数调用,调用一次,返回一次,但是fork()调用一次,返回两次,因为操作系统自动把当前进程(称为父进程)复制了一份(称为子进程),然后...
    99+
    2023-01-31
    进程 Python
  • Python 守护进程
     nohup 可以使程序后台运行不受终端影响,但想使程序运行后就脱离终端Python需要用到os.fork来实现,例子如下: daemonize.py #!/usr/bin/python #coding:utf-8  import sys ...
    99+
    2023-01-31
    进程 Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作