Junior — Middle
Sistemdə kontekstin konfiqurasiyası necə həyata keçirilir?
sobes.tech Süni İntellekt
AI-dan cavab
Go dilində, kontekst (context.Context) işləmə müddəti, ləğv və digər vacib məlumatların goroutine və funksiyalar arasında ötürülməsi üçün istifadə olunur. Kontekstin konfiqurasiyası adətən context.WithCancel, context.WithTimeout, context.WithDeadline və context.WithValue funksiyaları vasitəsilə həyata keçirilir.
Timeout ilə və dəyər ötürməklə kontekstin yaradılması nümunəsi:
ctx := context.Background()
ctx, cancel := context.WithTimeout(ctx, time.Second*5)
defer cancel()
ctx = context.WithValue(ctx, "userID", 12345)
// Sonra, ctx funksiyalara ötürülür ki, onlar timeout ilə əməliyyatı ləğv edə və ya userID əldə edə bilsinlər
Beləliklə, kontekstin konfiqurasiyası, valideyn kontekst əsasında yeni kontekst yaratmaq və lazım olan parametrlərlə (ləğv, timeout, dəyərlər) həyata keçirilir.