Advertisement

掌握Go语言中 Context 包的功能与应用

阅读量:

context.Context被视为Go语言中的一个独特设计,在其他编程语言中鲜有类似的概念出现。context.Context提供了对Golang高并发的支持。

1. Goroutine和Channel

为了深入理解context包,有必要先掌握Goroutine和Channel的概念;这样做有助于深化对context包的理解。

1.1 Goroutine

作为Go语言中的一种高效执行单元,Goroutine是一种轻量级的执行线程,相较于单个线程而言,管理多个Goroutine时资源消耗相对较少.Goroutine是Go语言中最基础也是最重要的执行单元,每一个Go程序都必须运行至少一个主 Goroutine,即main goroutine.当程序开始运行时,该goroutine会自动被创建.为了更好地理解goroutine的工作原理,可以先了解一下 Go语言中的线程Thread与协程Coroutine的概念

  • 线程(Thread)
    Lightweight processes are known as threads. A typical thread comprises a unique identifier (thread ID) , the current instruction pointer (PC) ,

全部评论 (0)

还没有任何评论哟~