Junior — Middle
Použili ste mechanizmus WithCancel na riadenie zrušenia kontextu vo svojich projektoch?
sobes.tech AI
Odpoveď od AI
Áno, mechanizmus WithCancel z balíka context v jazyku Go sa často používa na riadenie zrušenia operácií a gorútín. Umožňuje vytvoriť kontext, ktorý možno manuálne zrušiť, čo je užitočné na prerušenie dlhých alebo asynchrónnych úloh.
Príklad použitia:
ctx, cancel := context.WithCancel(context.Background())
// Spúšťame gorutinu, ktorá počúva na zrušenie
go func() {
<-ctx.Done()
fmt.Println("Operácia zrušená")
}()
// V určitom momente zavoláme cancel()
cancel()
Toto umožňuje kontrolu životného cyklu operácií a predchádza únikom zdrojov.