Junior — Middle
Как може да се определи текущата дължина на опашката в канал?
sobes.tech AI
Отговор от AI
В Go, дължината на текущата опашка в канал може да се определи с помощта на вградената функция len(). Тя връща броя на елементите, които в момента се намират в буфера на канала (т.е. броя на съобщенията, чакащи да бъдат получени). Например:
ch := make(chan int, 5)
ch <- 1
ch <- 2
fmt.Println(len(ch)) // Ще изведе 2
Важно: len() работи само за буферирани канали, за небуферираните винаги ще бъде 0.