Sobes.tech
Junior — Middle

Kaip galima nustatyti dabartinę eilės ilgį kanale?

sobes.tech AI

Atsakymas iš AI

Go kalboje, einamojo kanalo eilės ilgį galima nustatyti naudojant įmontintą funkciją len(). Ji grąžina elementų skaičių, kurie šiuo metu yra kanalo buferyje (t. y. pranešimų, laukiančių priėmimo). Pavyzdžiui:

ch := make(chan int, 5)
ch <- 1
ch <- 2
fmt.Println(len(ch)) // Išves 2

Svarbu: len() veikia tik su buferiuotais kanalais, be buferio kanalams ji visada grąžins 0.