Вопрос: Как использовать `context.WithCancel` для отмены работы?
Go
Senior
Без компании
Вопрос: Как использовать `context.WithCancel` для отмены работы?
Ответы
```go
ctx, cancel := context.WithCancel(context.Background())
go func() {
// по условию отменяем
cancel()
}()
<-ctx.Done()
fmt.Println(ctx.Err())
```
**Как это работает:** `ctx.Done()` — канал, который закрывается при отмене. Подходит для остановки goroutine/запросов.