前言
在我们平时写代码的时候,其实都基于了一种假设:假设我们的程序只会有一个“执行单元”在按顺序执行,基于这种假设可以大大降低代码编写难度,而且大多数时候并不会发生问题。而这种建立在假设之上的“虚拟沙盒”实际上是人为创造出来的,目的就是为了让广大程序员专注于业务场景处理,而不需要去考虑底层硬件、操作系统、JVM等与业务无关的东西。
但作为一个有追求的程序员,不应该只活在这种“虚拟沙盒”里,不应该止步于通过CRUD代码来实现业务需求。那么你就应该思考一下了:难道我们写的源代码真的是只会有一个“执行单元”在按顺序执行吗?这个“执行单元”说的到底是什么东西?并发编程说的并发是什么之间的并发?今天我就带大家来一探究竟。
什么是线程?
对,这个“执行单元”就是线程,我们写的代码实际上就是由线程来执行的,相信大家应该都了解这个概念,但我们还是以空杯的心态来重新认识一下这个熟悉又陌生的老朋友吧。
线程是计算机(CPU)进行运算调度的最小单元,线程被包含在进程之中&#x