Sobes.tech
Junior — Middle

Агар ба канали нависед, ки буфери пурра пурра шудааст, чӣ мешавад?

sobes.tech AI

Ҷавоб аз AI

В Go, ако се опитате да запишете стойност в канал с буфер, който е напълно запълнен, операцията по запис ще се блокира, докато се освободи място в канала (т.е., докато някой не прочете от канала). Това осигурява синхронизация между горутините и предотвратява загубата на данни.

Пример:

ch := make(chan int, 2) // буфер за 2 елемента
ch <- 1
ch <- 2
// ch <- 3 // тук записът ще се блокира, докато някой не прочете от ch