Sobes.tech
Junior — Middle

Context.WithTimeout orqali vaqt cheklov bilan kontekst yaratishda Cancel metodidan foydalanish shartmi?

sobes.tech AI

AIdan javob

Ha, context.WithTimeout tomonidan qaytarilgan Cancel funksiyasini chaqirish tavsiya etiladi, shunda kontekst bilan bog‘liq resurslar kerak bo‘lmaganda bo‘shatiladi. Hatto vaqt tugab, kontekst avtomatik ravishda bekor qilinsa ham, Cancel chaqirish resurslar oqib ketishini oldini oladi.

Foydalanish misoli:

ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel()

// ctx ni operatsiyalarda foydalaning

defer cancel() chaqiruvi funksiyadan chiqishda resurslar bo‘shatilishini kafolatlaydi, hatto operatsiya vaqtidan oldin tugatilgan bo‘lsa ham.