Python day13_进程

用进程实现多任务 进程之间不共享全局变量

import multiprocessing

import time

import os

# 工作任务

def work():

    current_process = multiprocessing.current_process()

    print("work:", current_process)

    print("work进程编号:", current_process.pid, os.getpid())

    # 获取父进程的编号

    print("work父进程的编号:", os.getppid())

    for i in range(10):

        print("在子进程中执行")

        time.sleep(0.2)

        # 根据进程编号杀死对应的进程

            # 1. 进程编号

            # 2. 9表示强制杀死

        os.kill(os.getpid(), 9)

if __name__ == '__main__':

    # 扩展:-获取当前进程对象

    current_process = multiprocessing.current_process()

    print("main:", current_process)

    # 扩展-获取当前进程的编号

    print("main进程编号:", current_process.pid)

# 创建子进程

    # group:进程组,默认值是None,目前只能使用None不能设置其它参数

    # target: 执行目标函数

    # name: 进程名称,默认的格式: Process-1,....

    # args: 以元组方式传参

    # kwargs: 以字典方式传参

    sub_process = multiprocessing.Process(target=work)

    # 启动子进程,执行对应的任务

    sub_process.start()

    # 在主进程中执行循环打印信息

    for i in range(20):

        print("在主进程中执行")

        time.sleep(0.2)

你可能感兴趣的:(Python day13_进程)