Junior — Middle
Layihənizdə və ya kodunuzda kontekstdən istifadə məqsədi nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Go dilində, kontekst (context.Context) yerinə yetirmə vəziyyəti haqqında məlumatların ötürülməsi üçün istifadə olunur; bu, vaxt aşımı, son tarixlər və əməliyyatların ləğvi kimi məlumatları əhatə edir və goroutine'lər arasında dəyərlərin ötürülməsi üçün də istifadə olunur.
Kontekstin istifadəsinin məqsədi:
- Sorğuların və əməliyyatların həyat dövrünü idarə etmək (məsələn, müştəri bağlandıqda HTTP sorğusunu ləğv etmək).
- Metadata ötürülməsi (məsələn, sorğu identifikatorları qeyd üçün).
- Zəruri olduqda çağırış zəncirinin ləğv olunmasını təmin etmək.
İstifadə nümunəsi:
ctx, cancel := context.WithTimeout(context.Background(), time.Second*5)
defer cancel()
// ctx-ni vaxt aşımı ilə dayandırıla bilən funksiyaya ötürürük
result, err := doSomething(ctx)
if err == context.DeadlineExceeded {
fmt.Println("Əməliyyat vaxt aşımı ilə dayandırıldı")
}
Bu şəkildə, kontekst tətbiqin komponentləri arasında icraatı idarə etməyə və məlumat mübadiləsinə kömək edir.