Appearance
Day 15 - Context
context包
go
import "context"
func f(ctx context.Context) {
// 从context获取值
value := ctx.Value("key")
fmt.Println(value)
}创建Context
go
// 根context
ctx := context.Background()
// 带取消
ctx, cancel := context.WithCancel(ctx)
// 带超时
ctx, cancel := context.WithTimeout(ctx, 5*time.Second)
// 带值
ctx := context.WithValue(ctx, "key", "value")面试考点
问题:Context的作用?
答案:
- 传递请求范围的值
- 控制取消(超时、主动取消)
- 避免goroutine泄漏
📅 学习进度
| Day | 主题 | 状态 |
|---|---|---|
| 01-14 | 基础 | ✅ |
| 15 | Context | ✅ |
| 16 | 单元测试 | ⬜ |
