Go语言基础之并发
[TOC] 更新、更全的《Go从入门到放弃》的更新网站,更有python、go、人工智能教学等着你: https://www.cnblogs.com/nickchen121/p/11517502.html <p>并发是编程里面一个非常重要的概念,Go语言在语言层面天生支持并发,这也是Go语言流行的一个很重要的原因。</p> 一、Go语言中的并发编程 二、并发与并行 <p>并发:同一时间段内执行多个任务(你在用微信和两个女朋友聊天)。</p> <p>并行:同一时刻执行多个任务(你和你朋友都在用微信和女朋友聊天)。</p> <p>Go语言的并发通过<code>goroutine</code>实现。<code>goroutine</code>类似于线程,属于用户态的线程,我们可以根据需要创建成千上万个<code>goroutine</code>并发工作。<code>goroutine</code>是由Go语言的运行时(runtime)调度完成,而线程是由操作系统调度完成。</p> <p>Go语言还提供<code>channel</code>在多个<code>goroutine</code>间进行通信。<code>goroutine</code>和<code>channel</code>是 Go 语言秉承的 CSP(Communicating Sequential Process