继承Process类,run函数的简单使用
#定义一个类 继承Process类
from multiprocessing import Process
import os
import time
class Download(Process):
def __init__(self,interval):
Process.__init__(self)
self.interval = interval def run(self):
t_start = time.time()
print('子进程(%s)开始执行,父进程为(%s)'%(os.getpid(),os.getppid())) time.sleep(self.interval)
t_stop = time.time()
print("(%s)子进程执行结束,耗时%f秒"%(os.getpid(),t_stop-t_start)) #主进程
if __name__ == "__main__":
#主进程开始时间
t_start = time.time()
print("当前程序的进程id: (%s)"%os.getpid())
#调用Download函数 p就是生成的一个子进程 2传给init魔术方法
#每次实例化的时候就相当于实例化了一个进程
p = Download(2)
p.start()
#一直阻塞到子进程执行完 才开始执行主进程 实现进程同步
#判断是否进程是否还在执行 True or False
print(p.is_alive())
p.join(2)
if p.is_alive() == True:
#等待子进程2秒 过时立即终止子进程p
p.terminate()
print(p.is_alive())
t_stop = time.time()
print("(%s)主进程执行结束,耗时%f秒" % (os.getpid(), t_stop - t_start))
继承Process类,run函数的简单使用的更多相关文章
- Python mutilprocess模块之第二种创建进程方法--继承Process类
'''创建新的进程的第二种方法: 使用类的方式,可以自己定义一个类,继承Process类,每次实例化这个类的时候, 就等于实例化一个进程对象 '''from multiprocessing impor ...
- 继承Process类,另一种方法计算累加和以及阶乘
#定义一个类 继承Process类 from multiprocessing import Process import os import time class jiecheng(Process): ...
- 继承Process类,计算累加和以及阶乘
#定义一个类 继承Process类 from multiprocessing import Process import os class Download(Process): def __init_ ...
- python2学习------基础语法3(类、类的继承、类成员函数、防御式编程)
1.类的定义以及实例化 # 类定义 class p: """ this is a basic class """ basicInfo={&q ...
- Java 多线程实现方式一:继承Thread类
java 通过继承Thread类实现多线程很多简单: 只需要重写run方法即可. 比如我们分三个线程去京东下载三张图片: 1.先写个下载类: 注意导入CommonsIO 包 public class ...
- Qt QThread两种方式的使用:1-继承QThread重写run函数; 2- 继承QObject并moveToThread && 消息和槽在线程和依附线程间的传递
2019年08月18日起笔 方式一:继承QThread重写run函数 MyThread.h ----------------------------------- ... class MyThread ...
- php函数、类和对象以及类的封装、继承、类的静态方法、静态属性
1.函数 php内置函数可以直接使用,如果没有安装php扩展即可 自定义函数 //函数function 函数名 function dump($var = null){ //支出默认参数 ...
- Qt 控制线程的顺序执行(使用QWaitCondition,并且线程类的run函数里记得加exec(),使得线程常驻)
背景项目中用到多线程,对线程的执行顺序有要求: A.一个线程先收数据 B.一个线程处理数据 C.一个线程再将处理后的数据发送出去 要求三个线程按照ABC的顺序循环执行. 思路子类化多线程方法 重写子类 ...
- 创建线程的一般方式和匿名内部类方式对比——继承thread类,重写run()方法
第一种:继承thread类,重写run()方法 一般方式:Demo01.java /** * 创建线程的第一种方式:继承thread类,重写run()方法 * * @author :liuqi * @ ...
随机推荐
- 深入理解DiscoveryClient
Spring Cloud Commons 提供的抽象 最早的时候服务发现注册都是通过DiscoveryClient来实现的,随着版本变迁把DiscoveryClient服务注册抽离出来变成了Servi ...
- SpringCloud-Eureka-Provider&Consumer
Eureka-Provider 服务的提供者 新建一个服务提供者项目 1.导入pom文件 <properties> <java.version>1.8</java.ver ...
- XSS——跨站脚本攻击
跨站点脚本攻击:通过对网页注入恶意脚本,成功地被浏览器执行,来达到攻击的目的. 一.XSS攻击类型与原理1. 反射型XSS攻击非持久性攻击,黑客使用社交性的交互技巧诱导用户点击访问目标服务器的链接,但 ...
- smbd - 向客户提供SMB/CIFS服务的服务器
总览 SYNOPSIS smbd [-D] [-F] [-S] [-i] [-h] [-V] [-b] [-d <debug level>] [-l <log directory&g ...
- java String练习题
package java07; /* 题目: 定义一个方法,把数组{1,2,3}按照指定格式拼接成一个字符串,格式参照如下:[word1#word2#word3] 思路: 1.首先准备一个int[]数 ...
- [Luogu2170]选学霸
这一道题,由于他说,"如果实力相当的人中,一部分被选上,另一部分没有,同学们就会抗议."而要求"既不让同学们抗议,又与原来的M尽可能接近".因此,我们要对实力相 ...
- golang对象
对象和组合 package main import ( "fmt" ) type father struct { name string sex int } type sun st ...
- Java中File类重修
IO流 概述 io流:输入输出流(input/output).流是一组有顺序的,有起点和终点的字节集合,是对各种数据传输的总称或抽象.即数据在两设备之间的传输称为流.流的本质是数据传输. InputS ...
- OpenFOAM4.0安装教程
Ubuntu 14.04以上版本支持pack安装. 1. add repository sudo add-apt-repository "http://dl.openfoam.org/ubu ...
- python3运行报错:TypeError: Object of type 'type' is not JSON serializable解决方法(详细)
返回结果先转成str 字符创