Context 包的作用

**题目来源:**腾讯

答案1:

Context 就像糖葫芦中的竹签子
它的作用是在上下文中传递除了业务参数之外的额外信息,这个额外信息是为了全局而考虑使用的,例如在微服务业务中,我们需要整个业务链条整体的超时时间信息。不过 go 标准库中的 Context 还提供了超时 Timeout 和 Cancel 机制。总的来说,在下面这些场景中,可以考虑使用 Context:

  • 上下文信息传递
  • 控制子 goroutine 的运行
  • 超时控制的方法调用
  • 可以取消的方法调用