Sobes.tech
Junior — Middle

Jaký je účel zpětné funkce Cancel v metodě Context.WithTimeout?

sobes.tech AI

Odpověď od AI

Funkce Cancel, která je vrácena metodou context.WithTimeout, je určena k explicitnímu zrušení kontextu před uplynutím stanovené doby. Volání této funkce uvolní zdroje spojené s kontextem a signalizuje všem posluchačům, že je třeba přerušit práci. To je důležité pro prevenci úniků zdrojů, zejména pokud operace skončí dříve, než vyprší časový limit.

Příklad použití:

ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel() // zajišťuje uvolnění zdrojů

// používejte ctx v operacích, které lze zrušit