Sobes.tech
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.