Junior — Middle
Агар ба канали нависед, ки буфери пурра пурра шудааст, чӣ мешавад?
sobes.tech AI
Ҷавоб аз AI
В Go, ако се опитате да запишете стойност в канал с буфер, който е напълно запълнен, операцията по запис ще се блокира, докато се освободи място в канала (т.е., докато някой не прочете от канала). Това осигурява синхронизация между горутините и предотвратява загубата на данни.
Пример:
ch := make(chan int, 2) // буфер за 2 елемента
ch <- 1
ch <- 2
// ch <- 3 // тук записът ще се блокира, докато някой не прочете от ch