Junior — Middle
რა დამატებითი ფუნქციები და შესაძლებლობები შეიყვანეს კონტექსტის მეთოდებში Go 1.21-ის გამოჩენისთანავე?
sobes.tech AI
პასუხი AI-სგან
Go 1.21-ში, context პაკეტში, დამატებულია გაუმჯობესებები, რომლებიც ფართო შესაძლებლობებს აძლიერებს კონტექსტის მართვაში:
- მხარდაჭერა დროით შეზღუდული და дедლაინით გაუქმების მხარდაჭერა გახდა უფრო მოქნილი.
- დამატებულია ახალი ფუნქციები რამდენიმე კონტექსტის კომფორტული გაერთიანებისთვის.
- გაუმჯობესდა შესრულება და შემცირდა მეხსიერების მოხმარება კონტექსტებთან მუშაობისას.
მაგალითად, ახლა შესაძლებელია შექმნათ კონტექსტები, რომლებიც ავტომატურად გაუქმდება, როდესაც რამდენიმე პირობა შესრულდება, რაც ამარტივებს ოპერაციების ციკლის მართვას:
ctx1, cancel1 := context.WithCancel(context.Background())
ctx2, cancel2 := context.WithTimeout(context.Background(), time.Second*10)
ctx := context.Merge(ctx1, ctx2) // ჰიპოთეტური გაერთიანების ფუნქცია
// გამოიყენეთ ctx მოთხოვნებში ან გორუტინებში
// გაუქმეთ ორივე კონტექსტი
cancel1()
cancel2()
(შენიშვნა: ზუსტი სინტაქსი და ფუნქციები შეიძლება განსხვავდებოდეს, რადგან ახალი შესაძლებლობები დამოკიდებულია კონკრეტულ რეალიზაციაზე Go 1.21-ში.)