python多进程编程 多个函数并发执行_python 并发编程 多进程 Process对象的其他属性方法 terminate与is_alive name pid 函数...

进程对象的其他方法一: terminate与is_alive

is_alive()  立刻查看的子进程结果 是否存活

from multiprocessing import Process

import time

import os

def task(name):

print("%s is running" % (name))

time.sleep(3)

print("%s is done" % (name))

if __name__ == "__main__":

p = Process(target=task,args=("子进程",))

p.start()

# 查看的子进程结果是否存活

print(p.is_alive())

p.join()

# 查看的子进程结果是否存活

print(p.is_alive())

print("主",)

'''

True 子进程存活

子进程 is running

子进程 is done

False 子进程不存活

'''

terminate() 关闭子进程,这种也是给操作系统发送信号和start 一样

子进程还活着

from multiprocessing import Process

import time

import os

def task(name):

print("%s is running" % (name))

time.sleep(3)

print("%s is done" % (name))

if __name__ == "__main__":

p = Process(target=task,args=("子进程",))

p.start()

# 关闭子进程 给操作系统发送信号

p.terminate()

print(p.is_alive())

p.join()

print("主",)

'''

True 子进程还活着

'''

关闭子进程,把内存空间回收,是操作系统做的,但是什么时候关闭进程的时间就不知道了

terminate() 只是发送信号

解决:需要time.sleep() 让程序睡的时间长点

信号发出后,需要操作系统反应一段时间

from multiprocessing import Process

import time

import os

def task(name):

print("%s is running" % (name))

time.sleep(3)

print("%s is done" % (name))

if __name__ == "__main__":

p = Process(target=task,args=("子进程",))

p.start()

# 关闭子进程 给操作系统发送信号

p.terminate()

time.sleep(3)

print(p.is_alive())

p.join()

print("主",)

'''

False

'''

pid 查看子进程pid

p.pid

name 查看子进程名字

p.name

不设置进程名字 默认会给子进程 设置名字 Process-1

python 并发编程 多进程 Process对象的其他属性方法 join 方法

一 Process对象的join方法 在主进程运行过程中如果想并发地执行其他的任务,我们可以开启子进程,此时主进程的任务与子进程的任务分两种情况 情况一: 在主进程的任务与子进程的任务彼此独立的情况下 ...

python 并发编程 多进程 目录

python multiprocessing模块 介绍 python 开启进程两种方法 python 并发编程 查看进程的id pid与父进程id ppid python 并发编程 多进程 Proce ...

python 并发编程 多线程 Thread对象的其他属性或方法

介绍 Thread实例对象的方法 # isAlive(): 返回线程是否活动的. # getName(): 返回线程名. # setName(): 设置线程名. threading模块提供的一些方法: ...

python并发编程&多进程(二)

前导理论知识见:python并发编程&多进程(一) 一 multiprocessing模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu_cou ...

python并发编程&多进程(一)

本篇理论居多,实际操作见:  python并发编程&多进程(二) 一 什么是进程 进程:正在进行的一个过程或者说一个任务.而负责执行任务则是cpu. 举例(单核+多道,实现多个进程的并发执行) ...

Python并发编程-多进程

Python并发编程-多进程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.多进程相关概念 由于Python的GIL全局解释器锁存在,多线程未必是CPU密集型程序的好的选择. ...

python 并发编程 多进程 队列目录

python 并发编程 多进程 队列 python 并发编程 多进程 生产者消费者模型介绍 python 并发编程 多进程 生产者消费者模型总结 python 并发编程 多进程 JoinableQue ...

python 并发编程 多进程 互斥锁 目录

python 并发编程 多进程 互斥锁 模拟抢票 互斥锁与join区别

python 并发编程-- 多进程

一 multiprocessing 模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu_count()查看),在python中大部分情况需要使用多进程 ...

随机推荐

Eclipse工作常见问题总结

一.Eclipse常见快捷键使用 自动完成单词:Alt+/ 重命名:Shift+Alt+r(统一改变字段或方法名) 生成getter/setter方法: Shift+Alt+s,然后r 删除当前行:C ...

Spine批量导出Command line Export

1.准备工作及介绍 时间有点紧张,写的不是很详细,请见谅. 当前版本是2.2以上,购买版的.试用版的无法试用Command line Both Spine and the Spine launcher ...

Ubuntu-tomcat7目录

ubuntu下通过apt-get install tomcat7方式安装的tomcat目录分布如下,做个记录: user@myserver:/var/lib/tomcat7$ ls -lttotal ...

从ICLassFactory 为 CLSID的COM组建创建实例失败:c001f011

在sqlserver创建计划任务的时候,保存时出现:“从ICLassFactory 为 CLSID的COM组建创建实例失败:c001f011”. 解决方法:在运行sqlserver时,使用“以管理员身 ...

PostgreSQL Performance Monitoring Tools

PostgreSQL Performance Monitoring Tools https://github.com/CloudServer/postgresql-perf-tools This pa ...

Oracle 的简单描述

在 Oracle 开发中,客户端把 SQL 语句发送给服务器,服务器对 SQL 语句进行编译.执行,把执行的结果返回给客户端. Oracle SQL 语句由如下命令组成:  数据定义语言( DDL) ...

Android基础_2 Activity线性布局和表格布局

在activity的布局中,线性布局和表格布局是最简单的,这次分别从线性布局,表格布局以及线性布局和表格混合布局做了实验,实验中只需要编写 相应的xml的代码,java代码不需要更改,因为我们这里只是 ...

mac os升级为 Yosemite 10.10 后不能创建javaproject

出现这样的情况可能是因为mac系统升级导致JAVA的安装路径发生改变(Xcode升级后也出现模拟器位置改变的情况,不要奇怪) 之前安装的eclipse就自然找不到SDK的路径了,所以会捆绑失败 接下来 ...

Oracle教程-查询(二)

emp 雇员表字段名称   数据类型       是否为空   备注--------   -----------   --------   --------EMPNO    NUMBER(4)     ...

【Python】协程

协程,又称微线程,纤程.英文名Coroutine. 协程的概念很早就提出来了,但直到最近几年才在某些语言(如Lua)中得到广泛应用. 子程序,或者称为函数,在所有语言中都是层级调用,比如A调用B,B在 ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值