Sobes.tech
Junior — Middle

Go 1.21 ilə kontekst metodlarına hansı əlavə funksiyalar və imkanlar daxil edildi?

sobes.tech Süni İntellekt

AI-dan cavab

Go 1.21-də, context paketində, kontekst idarəetmə imkanlarını genişləndirən təkmilləşdirmələr əlavə olunub:

  • Timeout və deadline ilə ləğv etmə dəstəyi daha çevik hala gəldi.
  • Bir neçə konteksti rahat bir şəkildə birləşdirmək üçün yeni funksiyalar əlavə edildi.
  • Kontekstlərlə işləyərkən performans artırıldı və yaddaş istifadəsi azaldıldı.

Məsələn, indi bir neçə şərt yerinə yetirildikdə avtomatik olaraq ləğv olunan kontekstlər yaratmaq mümkündür, bu da əməliyyatların həyat dövrünün idarə edilməsini sadələşdirir:

ctx1, cancel1 := context.WithCancel(context.Background())
ctx2, cancel2 := context.WithTimeout(context.Background(), time.Second*10)

ctx := context.Merge(ctx1, ctx2) // hipotetik birləşdirmə funksiyası

// ctx-dən sorğularda və ya gorutinalarda istifadə edin

// Hər iki konteksti ləğv edin
cancel1()
cancel2()

(Dəqiq sintaksis və funksiyalar dəyişə bilər, çünki yeni imkanlar Go 1.21-dəki konkret tətbiqə bağlıdır.)