Junior — Middle
Použili jste mechanismus WithCancel k řízení zrušení kontextu ve svých projektech?
sobes.tech AI
Odpověď od AI
Ano, mechanismus WithCancel z balíčku context v jazyce Go se často používá k řízení zrušení operací a gorutin. Umožňuje vytvořit kontext, který lze ručně zrušit, což je užitečné pro přerušení dlouhých nebo asynchronních úkolů.
Příklad použití:
ctx, cancel := context.WithCancel(context.Background())
// Spouštíme gorutinu, která poslouchá na zrušení
go func() {
<-ctx.Done()
fmt.Println("Operace zrušena")
}()
// V určitém okamžiku zavoláme cancel()
cancel()
Toto umožňuje kontrolovat životní cyklus operací a předcházet únikům zdrojů.