cover_image

python知识巩固 | 通过主进程带起多个子进程实现多进程执行逻辑

Sir 老王 Python集中营
2021年05月10日 16:00

微信公众号:Python 集中营
你的肯定是我坚持的动力,如果这篇文章对你有帮助,点个关注吧!

相关依赖库

1# 安装os(系统操作模块)、time(时间模块)
2
3import os, time
4
5# 安装进程实现模块
6
7from multiprocessing import Process

Process常用函数

 1"""
2Process()对象常用属性、方法:
3
4  name:进程名
5
6  pid:进程id
7
8  run(),自定义进程时用于重写的函数
9
10  start(),开启进程
11
12  join(timeout=None),阻塞进程
13
14  terminate(),终止进程
15
16  is_alive(),进程是否存活
17"""

业务代码

 1'''
2定义函数执行业务代码
3'''

4def unit():
5
6    # 格式化打印当前进程信息
7
8    print("当前子进程pid:{0},ppid:{1}".format(os.getpid(), os.getppid()))
9
10    '''执行逻辑运算,也就是写逻辑代码的地方'''
11
12    print('========  业务代码  ========')
13
14    time.sleep(1)

主进程代码

 1'''
2主进程执行逻辑
3'''

4def run():
5
6    print("程序开始,主进程pid:{0}".format(os.getpid()))
7
8    # 定义一个数组用于存储子进程对象
9
10    processes = []
11
12    # 定义子进程数量
13
14    process_count = 5
15
16    # 实例化多个子进程
17
18    for i in range(process_count):
19
20        # 实例化子进程
21
22        process = Process(target=unit, name="unit" + str(i), args=())
23
24        # 将实例化进程添加到processes数组中
25
26        processes.append(process)
27
28    # 逐个开启子进程
29
30    for i in range(process_count):
31
32        processes[i].start()
33
34    # 进程等待
35
36    for i in range(process_count):
37
38        processes[i].join()
39
40    print("程序结束,主进程终止")

main()函数

1if __name__ == '__main__':
2
3    run()



图片

图片
关注 Python集中营
领取编程干货
培养编程思想


往期精彩回顾

python数据分析 | 历年电影上映票房、数量的正确打开方式(详细代码实战)

python知识巩固 | lambda函数表达式,玩转函数速写

python爬虫实例 | 自定义爬取百度美女图片并保存到本地,可自定义爬取图片类型、图片数量、保存路径等(超详细直接使用)
python数据分析可视化 | 程序员的浪漫,用python给爱的人绘制一个爱情公式!
python知识巩固 | 花式打印九九乘法口诀表
python数据分析 | 如何轻松获取股票交易数据、行业经济等信息
python数据分析 | 股票成交量与收盘价时间序列可视化分析
趣味python | 猜数字游戏的程序设计太简单了
python应用技巧 | 被忽视的global全局关键字
python应用小技巧 | list列表数据处理、列表排序、列表去重、列表合并


图片
创作不易,点赞、分享支持一下 ~图片
继续滑动看下一个
Python集中营
向上滑动看下一个