开篇:为什么需要多线程?
想象你去超市买东西,整个超市只有一个收银台。不管排了多少人,所有人只能一个接一个地结账。这就是单线程的世界——所有任务排成一队,挨个执行。
现在超市开了 5 个收银台,5 个人可以同时结账,效率直接翻倍。这就是多线程——多个任务可以"同时"推进。
从硬件来看,CPU 主频从 2003 年起就不再翻倍了(摩尔定律失效),取而代之的是多核架构。你的笔记本可能有 8 核、16 核,但如果程序只用单线程,那剩下的核心全在"摸鱼"。想让程序跑得快,就必须用并行或并发编程。
大约 24 分钟