进程

2022-12-05  本文已影响0人  测试探索

进程是操作系统分配资源的基本单位 ,线程是操作系统任务调度执行的基本单位

一:multiprocessing模块

1-1:Process类:

创建进程对象的参数:
    target:指定任务函数
    name:设置线程名
    args:给任务函数传参
    kwargs:给任务函数传参
    daemon:设置是否作为守护进程

1-2:方法:

start:启动进程执行
join:设置主线程等待子进程执行
run:设置线程执行的逻辑
clase:关闭进程
kill:关闭进程

1-3:进程对象常用属性

name:进程名
pid:进程编号

二、进程之间数据共享

from multiprocessing import Process,Queue
"""
进程之间数据传输只能使用进程模块中的队列multiprocessing.Queue
"""
a = 0
def work1(q):
    a = q.get()
    for i in range(2000):
        a += 1
    q.put(a)

    print("work中的a:",a)

def work2(q):
    a = q.get()
    for i in range(10):
        a += 1
    q.put(a)

    print("work2中的a:",a)


def main():
    a = 0
    que = Queue()
    que.put(a)
    p1 = Process(target=work1,args=(que,))
    p2 = Process(target=work2,args=(que,))

    p1.start()
    p2.start()

    p1.join()
    p2.join()
    a = que.get()
    print("主进程中:a",a)

if __name__ == '__main__':
    main()

上一篇 下一篇

猜你喜欢

热点阅读