Sobes.tech
Junior — Middle

Loyihalaringizda kontekstni bekor qilishni boshqarish uchun WithCancel mexanizmini ishlatdingizmi?

sobes.tech AI

AIdan javob

Ha, Go tilidagi context paketidagi WithCancel mexanizmi odatda operatsiyalar va goroutinlarni bekor qilishni boshqarish uchun ishlatiladi. U qo'lda bekor qilinadigan kontekst yaratishga imkon beradi, bu uzoq yoki asinxron vazifalarni to'xtatishda qulay.

Foydalanish misoli:

ctx, cancel := context.WithCancel(context.Background())

// Bekor qilishni kutayotgan goroutinni ishga tushiramiz
go func() {
    <-ctx.Done()
    fmt.Println("Operatsiya bekor qilindi")
}()

// Bir paytlar, cancel() chaqiramiz
cancel()

Bu operatsiyalarning hayot aylanishini nazorat qilish va resurslar oqishini oldini olish imkonini beradi.