Junior — Middle
Aké ďalšie funkcie a možnosti boli zavedené do metód kontextu s príchodom Go 1.21?
sobes.tech AI
Odpoveď od AI
V Go 1.21 so bile uvedene izboljšave v paket context, ki razširjajo možnosti upravljanja s konteksti:
- Podpora za preklic z časovnim omejitvami in roki je postala bolj prilagodljiva.
- Dodane so nove funkcije za priročno združevanje več kontekstov.
- Izboljšana je zmogljivost in zmanjšana poraba pomnilnika pri delu s konteksti.
Na primer, zdaj je mogoče ustvariti kontekste, ki se samodejno prekličejo, ko so izpolnjeni več pogoji, kar poenostavi upravljanje življenjskega cikla operacij:
ctx1, cancel1 := context.WithCancel(context.Background())
ctx2, cancel2 := context.WithTimeout(context.Background(), time.Second*10)
ctx := context.Merge(ctx1, ctx2) // hipotetična funkcija za združevanje
// Uporabite ctx v zahtevkih ali gorutinah
// Prekličite oba konteksta
cancel1()
cancel2()
(Opomba: natančna sintaksa in funkcije se lahko razlikujejo, saj nove možnosti odvisne od konkretne implementacije v Go 1.21.)