diff --git a/content/42_21_goroutine.md b/content/42_21_goroutine.md index 63df0c2..45de720 100644 --- a/content/42_21_goroutine.md +++ b/content/42_21_goroutine.md @@ -10,7 +10,7 @@ ## 21.1 并发 -并发是在同一时间处理多件事情。并行是在同一时间做多件事情。并发的目的在于把当个 CPU 的利用率使用到最高。并行则需要多核 CPU 的支持。 +并发是在同一时间处理多件事情。并行是在同一时间做多件事情。并发的目的在于把单个 CPU 的利用率使用到最高。并行则需要多核 CPU 的支持。 Go 语言在语言层面上支持了并发,goroutine是Go语言提供的一种用户态线程,有时我们也称之为协程。所谓的协程,某种程度上也可以叫做轻量线程,它不由系统而由应用程序创建和管理,因此使用开销较低(一般为4K)。我们可以创建很多的协程,并且它们跑在同一个内核线程之上的时候,就需要一个调度器来维护这些协程,确保所有的协程都能使用CPU,并且是尽可能公平地使用CPU资源。