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