黑马程序员Python高级语法进阶教程-3_多进程完成多任务

黑马程序员 Python 高级语法进阶教程 - 第3节 多进程完成多任务

在前两节中,我们已经了解了什么是进程,以及进程在多任务编程中的重要性。本节将进入实战部分:如何使用多进程来完成多任务。这不仅是理论上的延伸,更是每个想掌握并发编程的 Python 程序员必修的一步。


一、什么是多进程?

简单来说,“多进程”就是在一个程序中开启多个子进程,每个进程独立执行一项任务。这样可以同时进行多个操作,提高程序的执行效率,尤其适用于 CPU 密集型任务或需要并发处理多个任务的场景。


二、3.1 创建进程的基本步骤

在 Python 中实现多进程的操作,其实非常简单,只需要三步:

1. 导入进程包:

import multiprocessing

2. 创建进程对象:

进程对象 = multiprocessing.Process()

3. 启动进程执行任务:

进程对象.start()

✅ 一个 .start() 就能让任务在新的进程中“独立奔跑”,让程序从此不再单打独斗。


三、3.2 通过 Process 类创建进程对象

我们在创建 Process 对象时,通常会传入一个参数 target,这个参数指定了进程要执行的函数。

进程对象 = multiprocessing.Process(target=任务函数)

可选参数说明:

参数名说明
target要执行的目标函数(任务名)
name进程名(一般不用设置)
group进程组,目前只能使用 None

四、3.4 案例实战:多任务并发执行

来看一个经典的多任务实战案例:我们希望同时做两件事——听音乐和敲代码

代码示例:

import multiprocessing

def coding():
    for i in range(3):
        print("coding...")

def music():
    for i in range(3):
        print("music...")

# 创建进程对象
coding_process = multiprocessing.Process(target=coding)
music_process = multiprocessing.Process(target=music)

# 启动进程
coding_process.start()
music_process.start()

运行结果如下:

coding...
music...
coding...
music...
...

可以看到两个任务是并发执行的,而不是像之前一样串行执行。这就是多进程带来的高效率。


五、知识要点回顾

✅ 多进程是 Python 实现多任务的一种方式,以下是最核心的用法总结:

  1. 导入进程包

    import multiprocessing
    
  2. 创建子进程并指定执行的任务

    multiprocessing.Process(target=任务函数)
    
  3. 启动子进程

    进程对象.start()
    

六、我的理解与收获

这一节课程让我明白了一个道理:不是所有任务都要挤在一个进程里完成,程序也要学会“分工协作”。

multiprocessing 可以轻松将一个大任务拆分成多个小任务,由多个进程独立完成。这种方式在处理计算密集型任务、批量下载、图像识别等项目中非常实用。

同时我也发现,虽然语法简单,但使用多进程也要注意资源隔离、进程间通信等问题。这会在后续课程中逐步讲解。


七、下一节预告

在下一节中,我们将继续深入学习多进程中的进程执行顺序主进程与子进程的关系,并了解如何使用 join() 控制进程等待。

敬请期待《第4节 主进程与子进程的运行关系》!


📌 课程来源:黑马程序员 Python 高级语法教程(www.itheima.com)
📌 配图参考:进程创建步骤、Process 参数表、PyCharm 实战运行截图

多进程是打开高效程序世界的第一扇门,别害怕复杂,动手写起来,你就会发现:并发其实没那么难!

—— END ——

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夏驰和徐策

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值