Junior — Middle
Kanaldagi hozirgi navbat uzunligini qanday aniqlash mumkin?
sobes.tech AI
AIdan javob
Go tilida, hozirgi navbat uzunligini kanalda len() ichki funksiyasi yordamida aniqlash mumkin. Bu funktsiya hozirda kanalning buferida joylashgan elementlar sonini (ya'ni, qabul qilishni kutayotgan xabarlar sonini) qaytaradi. Masalan:
ch := make(chan int, 5)
ch <- 1
ch <- 2
fmt.Println(len(ch)) // 2 ni chiqaradi
Muhim: len() faqat bufferli kanallar uchun ishlaydi, bufferisiz kanallar uchun doimo 0 bo'ladi.