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对象的其他属性方法 terminate与is_alive name pid 函数的更多相关文章
- python 并发编程 多进程 Process对象的其他属性方法 join 方法
一 Process对象的join方法 在主进程运行过程中如果想并发地执行其他的任务,我们可以开启子进程,此时主进程的任务与子进程的任务分两种情况 情况一: 在主进程的任务与子进程的任务彼此独立的情况下 ...
- 并发编程(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区别
随机推荐
- mapper映射文件配置之select、resultMap(转载)
原文地址:http://www.cnblogs.com/dongying/p/4073259.html 先看select的配置吧: <select <!-- 1. id ( ...
- git 分支 版本回退
本地回退: git reset --hard HEAD~ 回退后推送到远程: git push --force .
- 详解GSM的基带跳频和射频跳频
跳频技术源于军事通信,目的是为了获得较好的保密性和抗干扰能力.跳频分为快速和慢速两种,GSM中的跳频属于慢跳频. 跳频方式从时域概念上分为帧跳频和时隙跳频,从载频实现方式上分为射频跳频和基带跳频. 帧 ...
- 牛客挑战赛34 A~E
闷声发大财 A O(nmk)dp即可,因为带了1/2的常数+2s所以很稳 #include <algorithm> #include <iostream> #include & ...
- 在 Cloudera Data Flow 上运行你的第一个 Flink 例子
文档编写目的 Cloudera Data Flow(CDF) 作为 Cloudera 一个独立的产品单元,围绕着实时数据采集,实时数据处理和实时数据分析有多个不同的功能模块,如下图所示: 图中 4 个 ...
- 12.python csv文件写入和读出
import csv headers = ["class", "name", "sex", "height", &quo ...
- SQLite为何要用C语言来开发?
SQLite 选择 C 语言的理由是?为什么不选择 Go 或者 Rust? C 语言是最好的 SQLite 在 2000 年 5 月 29 日发布,并一直使用 C 语言实现.C 语言一直是实现 SQL ...
- Tire树简介
又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种. 典型应用:用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计. 它的优点是:利用字符串的公共 ...
- Ansible跳板机自动部署
首先,安装ansible,略过此步骤. 一.控制机(jenkens.ansible所在机器与跳板机之间互信,跳板机与目的机之间互信) 1.在客户端生成公钥私钥对 命令:ssh-keygen -t rs ...
- 【CodeChef】LECOINS(同余最短路,背包DP)
题意:给定n个物品,每个物品可以取无限次,每个物品有两种属性:价值v和颜色c 现在有q个询问,每次询问是否能取出价值和为S的方案,如有多解输出不同颜色种数的最大值 题意:看到BZOJ评论区有好心人说C ...