一。进程的其他方法

  1.   .name      进程名   (可指定)

  2.  .pid     进程号

  3.   os.getpid         在什么位置就是什么的进程号

  4.   .is_alive()     判断子进程是否还活着

  5.    .terminate()       给操作系统发出结束进程的信号

二 。进程之间是物理隔离的

三. 守护进程

  .daemon = True    设置成为守护进程

          必须写在 start 之前

    跟着主进程的结束而结束

四。僵尸进程和孤儿进程

  1.僵尸进程(有害):一个进程使用fork创建子进程,如果子进程退出,

而父进程并没有调用wait或waitpid获取子进程的状态信息,

那么子进程的进程描述符仍然保存在系统中。这种进程称之为僵死进程

  2.孤儿进程(无害):一个父进程退出,而它的一个或多个子进程还在运行,

     那么那些子进程将成为孤儿进程。孤儿进程将被init进程(进程号为1)所收养,

     并由init进程对它们完成状态收集工作

五.进程锁/互斥锁/同步锁    锁名 = Lock()

  1.    锁名.acquire()

    锁住部分(串行)

    锁名.release()

  2.    with  锁名

      锁住部分

抢票实例:

六.数据共享    Manager

七.进程队列 (先进先出)    队列名 = Queue (队列长度)

  1.   .put ()   放值

  2.   .get()     取值

  3.   防止阻塞   (try ...except)

    超出时    .put_nowait()

    取空时    .get_nowait()

  4.  .qsize()   当前队列有多少数据

  5.   .full()     是否满了   (Ture/False) 不可靠

  6.   .empty()     是否空了   (Ture/False) 不可靠

生产者消费者模型:

八.  Joinablequeue模型    队列有返回 

    队列名 =  Joinablequeue(队列长度) 

    队列名.task_done()    #给队列发送一个取出的这个任务已经处理完毕的信号

    队列名.join() #就等着task_done()信号的数量,

          和我put进去的数量相同时,才继续执行

生产者消费者模型:

day 31 进程的其他方法 进程锁 进程队列的更多相关文章

  1. 并发编程6 锁&进程&队列

    1.进程的其他方法 2.验证进程空间隔离和守护进程 3.孤儿进程和僵尸进程 4.锁 for循环加join数据共享 5.进程队列的简单应用 6.通过队列实现进程间的通信 7.生产者消费者模型及Queue ...

  2. day31 进程和其他方法,锁,队列

    1.进程的其他方法: 首先引入模块: import os from multiprocessing import Process p = Process(target=f,) 进程的id:  p.pi ...

  3. Python进阶----线程基础,开启线程的方式(类和函数),线程VS进程,线程的方法,守护线程,详解互斥锁,递归锁,信号量

    Python进阶----线程基础,开启线程的方式(类和函数),线程VS进程,线程的方法,守护线程,详解互斥锁,递归锁,信号量 一丶线程的理论知识 什么是线程:    1.线程是一堆指令,是操作系统调度 ...

  4. 创建进程,join方法,进程对象相关属性和方法,僵尸进程和孤儿进程,守护进程,互斥锁

    创建进程 在python中提供了一个multiprocessing模块可以帮助我们使用多进程解决问题.在multiprocessing 模块中有一个类Process. from multiproces ...

  5. linux下查看进城(ps)的方法 与 杀死进程(kill)的N种方法

    PS查看进程 inux上进程有5种状态: 1. 运行(正在运行或在运行队列中等待) 2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 3. 不可中断(收到信号不唤醒和不可运行, 进程必 ...

  6. python基础-12 多线程queue 线程交互event 线程锁 自定义线程池 进程 进程锁 进程池 进程交互数据资源共享

    Python中的进程与线程 学习知识,我们不但要知其然,还是知其所以然.你做到了你就比别人NB. 我们先了解一下什么是进程和线程. 进程与线程的历史 我们都知道计算机是由硬件和软件组成的.硬件中的CP ...

  7. Python 第八篇:异常处理、Socket语法、SocketServer实现多并发、进程和线程、线程锁、GIL、Event、信号量、进程间通讯

    本节内容: 异常处理.Socket语法.SocketServer实现多并发.进程和线程.线程锁.GIL.Event.信号量.进程间通讯.生产者消费者模型.队列Queue.multiprocess实例 ...

  8. sqlserver(查看被锁进程)

    -- ###### 查看被锁进程 ###### select 标志, 进程ID=spid,线程ID=kpid,块进程ID=blocked,数据库ID=dbid, 数据库名=db_name(dbid), ...

  9. Python-互斥锁 进程间通讯

    3.守护进程(**) 主进程创建守护进程 其一:守护进程会在主进程代码执行结束后就终止 其二:守护进程内无法再开启子进程,否则抛出异常: AssertionError: daemonic proces ...

随机推荐

  1. android lombok 使用

    把get /set / toString/hash/equal等方法从源文件中简化掉直接编译到二进制文件中 地址https://github.com/rzwitserloot/lombok 一 安装l ...

  2. 安装ubuntu不能引导win7

    台式机安装了ubuntu导致进不了win7了,2系统在同一硬盘. win7引导需要bootmgr和boot文件夹中的文件,2个东东在winows引导分区根目录下. 我的笔记本安装windows系统分区 ...

  3. CodeForces - 779D

    Little Nastya has a hobby, she likes to remove some letters from word, to obtain another word. But i ...

  4. poj1062(分区间迪杰斯特拉,内含测试数据,一直wa的同学可以进来看看)

    昂贵的聘礼 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 54946   Accepted: 16518 Descripti ...

  5. <Spark Streaming><Flume><Integration>

    Overview Flume:一个分布式的,可靠的,可用的服务,用于有效地收集.聚合.移动大规模日志数据 我们搭建一个flume + Spark Streaming的平台来从Flume获取数据,并处理 ...

  6. 继承映射中的java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: person is not mapped [FROM person]

    继承映射中查询对象的过程中报错: java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxExcep ...

  7. 在 Andriod/IOS 程序中使用自定义字体

    很早就遇到这个问题,QDAC作者也在这里给出了方案.

  8. kbmMW随机数与强密码

    kbmMW随机数生成器 为了使基于kbmMW开发的项目更安全,其又提供了随机数及强密码生成实现类,拿来即用,让人感觉真是站到巨人的肩膀上好干活! 随机数方面,kbmMW分别提供32及64位的随机数生成 ...

  9. Python中常见字符串去除空格的方法总结

    Python中常见字符串去除空格的方法总结 1:strip()方法,去除字符串开头或者结尾的空格>>> a = " a b c ">>> a.s ...

  10. UUID自动生成

    (uuid,available,createtime)  select left(replace(uuid(), '-', ''),24),1,utc_timestamp() 使用: ),,utc_t ...