黑马程序员Python高级语法进阶教程-1_多任务介绍

黑马程序员 Python 高级语法进阶教程 - 第1节 多任务介绍、


本人在实习过程中遇到了线程阻塞为了解决bug特地前来复习多线程。大学误人子弟真是害人不浅。


在现代编程中,“多任务”这个词已经不再陌生。我们每天使用的操作系统本质上就是一个强大的“多任务调度器”。而在 Python 的世界里,想要让程序处理更高效、更有响应力,理解并掌握“多任务”编程,至关重要。

今天我们跟随黑马程序员的课程,从零开始,认识什么是多任务、为什么需要它,以及它的两种基本形式——并发与并行。


一、为什么需要多任务?

如图中所展示,当我们从网络上下载多个视频文件时,浏览器往往是同时发起多个下载任务。为什么不一个下载完再开始下一个?答案其实很直白:

多任务可以 大大提升程序的执行效率。 

CPU 是一个高效的计算器,但它只能处理一件事情,如果让它“傻等”某个操作完成(比如网络响应),那简直就是资源的浪费。多任务就是为了最大程度利用 CPU 的运算能力,在一个任务等待的时候,迅速切换去处理别的任务。


二、多任务的概念:什么是多任务?

多任务就是 在同一时间段内执行多个任务

注意,不一定是“真正同时”,而是表面上感觉是同时。这就引出了两个关键词:并发(Concurrency)和并行(Parallelism)。


三、并发:快速切换,让你以为是“同时执行”

在黑马程序员课程中提到一个例子:

一个单核 CPU 在处理多个任务时,操作系统会快速地在多个任务之间来回切换,每次只执行一个任务的一小部分,比如执行 0.01 秒,就切换到下一个任务。

这种切换速度极快,快到人类无法察觉,就像我们看电视的时候,其实是由一帧一帧的画面快速播放而成一样。这种现象就叫 并发

🔹 关键词:任务数 > CPU 核心数
🔹 核心思想:快速切换、模拟同时执行

例子:

  • 软件1 执行0.01秒

  • 切换到 软件2 执行0.01秒

  • 再切换到 软件3 执行0.01秒

**结果:**虽然每次只执行一点点,但由于切换速度快,让我们“以为”它们是同时进行的。


四、并行:多个核心,真正的“同时”

与并发不同,并行是在多个 CPU 核心上,真正同时运行多个任务。

比如一台拥有4核的 CPU,它可以同时运行4个不同的任务,而不需要任务间切换。每个内核就像一个“专用跑道”,各跑各的,互不打扰。

🔸 关键词:任务数 ≤ CPU 核心数
🔸 核心思想:真正的同时执行

例子:

  • CPU 核心1 → 执行任务A

  • CPU 核心2 → 执行任务B


五、知识点总结

课程最后总结了多任务的核心知识点:

  1. 多任务的好处:

    • 充分利用 CPU 资源

    • 提高程序效率

    • 增强程序的“并发处理能力”

  2. 多任务的两种执行方式:

    • 并发:在一段时间内快速切换多个任务(单核模拟多任务

    • 并行:在一段时间内真正同时执行多个任务(多核真实多任务


六、我的理解与思考

学到这里,我意识到“多任务”不只是技术细节,更是一种程序结构设计的哲学如何在有限资源下,让程序保持高效?

就像现实生活中,我们一边听音乐一边写作业,手机在下载视频的同时还能刷微博,程序世界的“多线程思维”其实就是我们生活方式的映射。


七、下一步学习方向

后续黑马程序员课程会逐步深入讲解:

  • Python 中的多线程、多进程实现

  • asyncio 异步编程模型

  • PyQt 等 GUI 编程中如何使用信号与槽实现任务异步响应

我将继续跟进并记录学习过程,敬请期待第二篇笔记!


📌 课程来源:黑马程序员 Python 高级语法教程(黑马程序员Python高级语法进阶教程_python多任务及网络编程,从零搭建网站全套教程
📌 视频示意:任务下载 + PPT讲解截图

如果你也在学习 Python,多任务是你必须征服的一座山峰。不要怕,这才刚开始。

—— END ——

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

夏驰和徐策

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

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

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

打赏作者

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

抵扣说明:

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

余额充值