进程对象的其他方法一: 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 函数的更多相关文章

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

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

  2. 并发编程(Process对象的join方法)(

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

  3. python 并发编程 多进程 目录

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

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

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

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

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

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

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

  7. Python并发编程-多进程

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

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

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

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

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

随机推荐

  1. mapper映射文件配置之select、resultMap(转载)

    原文地址:http://www.cnblogs.com/dongying/p/4073259.html 先看select的配置吧: <select         <!-- 1. id ( ...

  2. git 分支 版本回退

    本地回退: git reset --hard HEAD~ 回退后推送到远程: git push --force .

  3. 详解GSM的基带跳频和射频跳频

    跳频技术源于军事通信,目的是为了获得较好的保密性和抗干扰能力.跳频分为快速和慢速两种,GSM中的跳频属于慢跳频. 跳频方式从时域概念上分为帧跳频和时隙跳频,从载频实现方式上分为射频跳频和基带跳频. 帧 ...

  4. 牛客挑战赛34 A~E

    闷声发大财 A O(nmk)dp即可,因为带了1/2的常数+2s所以很稳 #include <algorithm> #include <iostream> #include & ...

  5. 在 Cloudera Data Flow 上运行你的第一个 Flink 例子

    文档编写目的 Cloudera Data Flow(CDF) 作为 Cloudera 一个独立的产品单元,围绕着实时数据采集,实时数据处理和实时数据分析有多个不同的功能模块,如下图所示: 图中 4 个 ...

  6. 12.python csv文件写入和读出

    import csv headers = ["class", "name", "sex", "height", &quo ...

  7. SQLite为何要用C语言来开发?

    SQLite 选择 C 语言的理由是?为什么不选择 Go 或者 Rust? C 语言是最好的 SQLite 在 2000 年 5 月 29 日发布,并一直使用 C 语言实现.C 语言一直是实现 SQL ...

  8. Tire树简介

    又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种. 典型应用:用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计. 它的优点是:利用字符串的公共 ...

  9. Ansible跳板机自动部署

    首先,安装ansible,略过此步骤. 一.控制机(jenkens.ansible所在机器与跳板机之间互信,跳板机与目的机之间互信) 1.在客户端生成公钥私钥对 命令:ssh-keygen -t rs ...

  10. 【CodeChef】LECOINS(同余最短路,背包DP)

    题意:给定n个物品,每个物品可以取无限次,每个物品有两种属性:价值v和颜色c 现在有q个询问,每次询问是否能取出价值和为S的方案,如有多解输出不同颜色种数的最大值 题意:看到BZOJ评论区有好心人说C ...