1. #_author:来童星
    #date:2019/12/17
    # 使用Process子类创建进程
    from multiprocessing import Process
    import time
    import os
    #继承Process类
    class SubProcess(Process):
    #由于Process类本身也有__init__初始化方法,这个子类相当于重写了父类的这个方法
    def __init__(self,inteval,name=''):# 注意name要有默认值
    Process.__init__(self)
    # super(SubProcess, self).__init__()
    self.inteval=inteval
    if name:
    self.name=name
    #重写了Process类的run()方法
    def run(self):
    print('子进程(%s)开始执行,父进程为(%s)' % (os.getpid(), os.getppid()))
    t_start = time.time()
    time.sleep(self.i)
    t_end = time.time()
    print("子进程(%s)执行时间为'%0.2f'秒" % (os.getpgid(), t_end - t_start))
  2.  
  3. if __name__=='__main__':
    print('-------父进程开始执行-------')
    print('父进程PID:%s'%os.getppid())
    p1=SubProcess(inteval=1,name='mrsoft')# 实例化进程p1
    p2=SubProcess(inteval=2)# 实例化进程p2
    p1.start()
    p2.start()
    # 同时父进程仍然往下执行,如果p2进程还在执行,将会返回True
    print("p1.is_alive=%s"%p1.is_alive())
    print("p2.is_alive=%s"%p2.is_alive())
    #输出p1,p2进程的别名和pid
    print("p1.name=%s"%p1.name)
    print('p1.pid=%s'%p1.pid)
    print("p2.name=%s"%p2.name)
    print('p2.pid=%s'%p2.pid)
    print('-------等待子进程-------')
    p1.join()
    p2.join()
    print('-------父进程执行结束-------')
    运行结果:
    -------父进程开始执行-------
    父进程PID:5580
    p1.is_alive=True
    p2.is_alive=True
    p1.name=mrsoft
    p1.pid=4044
    p2.name=SubProcess-2
    p2.pid=10196
    -------等待子进程-------
    -------父进程执行结束-------

使用Process子类创建进程的更多相关文章

  1. Python多进程库multiprocessing创建进程以及进程池Pool类的使用

    问题起因最近要将一个文本分割成好几个topic,每个topic设计一个regressor,各regressor是相互独立的,最后汇总所有topic的regressor得到总得预测结果.没错!类似bag ...

  2. linux创建进程fork的方法步骤

    fork创建进程 函数原型如下 #include// 必须引入头文件,使用fork函数的时候,必须包含这个头文件,否则,系统找不到fork函数 pid_t fork(void); //void代表没有 ...

  3. android,JNI创建进程,使用fork()

    long add(long x,long y) { pid_t fpid; //fpid表示fork函数返回的值 int count=0; fpid=fork(); if (fpid < 0) ...

  4. Java中如何创建进程(转)

    在Java中,可以通过两种方式来创建进程,总共涉及到5个主要的类. 第一种方式是通过Runtime.exec()方法来创建一个进程,第二种方法是通过ProcessBuilder的start方法来创建进 ...

  5. LINUX编程学习笔记(十四) 创建进程与 父子进程内存空间

    1什么是进程:进程是一个执行中的程序 执行的程序: 代码->资源->CPU 进程有很多数据维护:进程状态/进程属性 所有进程属性采用的一个树形结构体维护 ps  -a//所有进程 ps - ...

  6. inux的进程-进程的概念和fork创建进程

    一.  什么是进程? 初学者,可能认为程序或者一段代码就是一个进程.其实这样说是很不全面的,进程简单的说就是一个个条件. 1.需要一个代码 2.需要运行这个代码环境和资源 从下面的一段代码,我们来分析 ...

  7. Java并发编程:如何创建进程?

    转载自:http://www.cnblogs.com/dolphin0520/p/3913517.html 在前面一篇文章中已经讲述了在进程和线程的由来,今天就来讲一下在Java中如何创建线程,让线程 ...

  8. Java 多线程详解(二)------如何创建进程和线程

    Java 多线程详解(一)------概念的引入:http://www.cnblogs.com/ysocean/p/6882988.html 在上一篇博客中,我们已经介绍了并发和并行的区别,以及进程和 ...

  9. C语言 进程控制---创建进程fork()函数

    #include "sys/types.h" #include "stdio.h" #include "stdlib.h" #include ...

随机推荐

  1. koa 中间件 koa-art-template 的使用

    例子 const Koa = require('koa'); const render =require('koa-art-template'); const path= require('path' ...

  2. Java中的API

    待施工 111 API: Scanner Random String StringBuilder ArrayList 集合详解: 包 import java.util.ArrayList 构造方法pu ...

  3. Java 基础 - 单行初始化数组 Initialize array in one line

    Code: public class ClassName { private char[] value = new char[]{'a','b'}; private char[] value2 = { ...

  4. vue 组件的简单使用01

    // 组件 自定义全局组件 Vue.component('mycom', { template: '<div v-on:click="count++">自定义组件 +{ ...

  5. docker的备份和迁移

    备份与迁移 容器保存为镜像 我们可以通过以下命令将容器保存为镜像 docker commit pyg_nginx mynginx pyg_nginx是容器名称 mynginx是新的镜像名称 此镜像的内 ...

  6. PHP中关于Phar的学习

    什么是phar 一个PHP程序往往是由多个文件组成的,如果能够集中为一个文件来分发和运行是很方便的.phar便应运而生.大概跟java的jar文件是差不多类似的.但是php的phar文件是可以由php ...

  7. SonarQube搭建和使用教程

    我想使用 SonarQube 查阅代码 请问怎么做,现在只有一个要审查代码的项目

  8. 洛谷 P4173 残缺的字符串 (FFT)

    题目链接:P4173 残缺的字符串 题意 给定长度为 \(m\) 的模式串和长度为 \(n\) 的目标串,两个串都带有通配符,求所有匹配的位置. 思路 FFT 带有通配符的字符串匹配问题. 设模式串为 ...

  9. 拾遗:Git 常用操作回顾

    温故而知新,可以为师矣. Git 布局 工作区---->暂存区---->本地仓库---->远程仓库 Create Repository git init PATH git add P ...

  10. 拾遗:Docker 基本应用

    https://wiki.gentoo.org/wiki/Docker 检查内核内核选项 exec /usr/share/docker/contrib/check-config.sh 使用 btrfs ...