Python并发编程-一个简单的多进程实例

import time
from multiprocessing import Process
import os
def func(args,args2): #传递参数到进程
    print(args,args2)
    time.sleep(1)
    print('子进程:', os.getpid())
    print('子进程的父进程:', os.getppid()) #查看当前进程父进程的进程号
    print(12345)

if __name__ == '__main__': #Windows操作系统必须声明这一句
    p = Process(target=func, args=(54321,'参数')) #func无需加括号,相对于内存地址, 函数注册到进程对象中,这是一个主进程
    #p是一个进程对象,还没有启动
    #args是func传递进来的参数,如果传一个参数后面必须加一个逗号,参数是一个元组
    p.start()#开启了一个子进程,操作系统创建新进程,进入就绪状态,要等待时间片允许的时候才执行代码
    print('*'*10)#会先打印10个*,这和上面的子进程是异步执行的
    print('父进程:', os.getpid()) #查看当前进程的进程号
    print('父进程的父进程:', os.getppid()) #查看当前进程父进程的进程号

>>>>>>>>>>>

**********

父进程: 13036
父进程的父进程: 8188
54321 参数
子进程: 6652
子进程的父进程: 13036
12345

 

 

posted @ 2018-09-21 10:01  空林~~清风~~~  阅读(999)  评论(0编辑  收藏  举报