电脑之家
柔彩主题三 · 更轻盈的阅读体验

进程并发执行到底是啥?别被术语吓住,看懂这几点就明白了

发布时间:2026-04-25 00:30:29 阅读:8 次

你有没有遇到过这种情况:一边用微信视频聊天,一边在后台下载大文件,浏览器还开着好几个标签页刷网页——电脑好像同时干着好几件事,一点都不卡。其实,这就是「进程并发执行」在悄悄干活。

进程不是“同时”,而是“轮流抢时间”

严格来说,普通单核 CPU 并不能真正让多个进程“同一毫秒”运行。它靠的是高速切换:给微信进程分配 5 毫秒,切到下载工具 5 毫秒,再跳到浏览器渲染进程……人眼和应用根本察觉不到停顿,于是感觉“都在跑”。这就像餐厅里一个服务员来回跑三张桌子,每桌只服务两秒钟,但客人觉得“他一直在忙我这桌”。

多核CPU让并发更真实

现在主流电脑基本都是双核起步,四核、八核很常见。这时候,操作系统真能安排不同进程跑到不同物理核心上——微信音视频处理跑在核心1,迅雷下载跑在核心2,浏览器渲染跑在核心3……这才是货真价实的“并行”。不过日常说的“并发执行”,一般就泛指这种看起来+实际上都能多任务推进的状态。

举个接地气的例子:你开三个软件

假设你同时打开:记事本(进程A)、QQ音乐(进程B)、Edge浏览器(进程C)。它们各自独立占用内存、互不干扰。当你在记事本打字时,QQ音乐照样播歌,Edge也在加载网页——这三个进程被系统调度器按需唤醒、分配CPU时间片、暂存状态、再恢复,整个过程对用户完全透明。

简单代码感受下“并发味儿”

下面这段 Python 示例,用 threading 模拟两个任务“看似同时”运行(注意:这是线程级并发,常用于演示逻辑;真正进程级并发会用 multiprocessing,原理类似):

import threading
import time

def task(name, delay):
for i in range(3):
print(f'{name} 执行第 {i+1} 次')
time.sleep(delay)

t1 = threading.Thread(target=task, args=('下载任务', 0.5))
t2 = threading.Thread(target=task, args=('日志记录', 0.8))
t1.start()
t2.start()
t1.join()
t2.join()

运行后你会看到两行输出交错出现,比如:
下载任务 执行第 1 次
日志记录 执行第 1 次
下载任务 执行第 2 次
……
这不是魔法,是操作系统在背后反复切换 CPU 使用权的结果。

别混淆:并发 ≠ 并行 ≠ 多线程

• 并发:强调“一起往前走”,不管是不是真同时,目标是提高资源利用率和响应速度;
• 并行:强调“真正在多个物理单元上同步跑”,需要硬件支持;
• 多线程是实现并发的一种手段(轻量),多进程是另一种(更隔离、更稳)。写程序时选哪种,得看你要不要共享数据、怕不怕一个崩了全挂。

搞懂进程并发执行,不是为了背概念,而是下次看到任务管理器里一堆“正在运行”的进程时不懵,知道为啥关掉几个就能让电脑变快一点——因为它们一直在争CPU、抢内存、要磁盘IO。