Sobes.tech
Senior

Коя същност се използва за прехвърляне на данни между горутините?

sobes.tech AI

Отговор от AI

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

Пример за използване на канал:

ch := make(chan int) // създаваме канал за пренос на int

go func() {
    ch <- 42 // изпращане на стойност към канала
}()

стойност := <-ch // получаване на стойност от канала
fmt.Println(стойност) // ще изведе 42

Каналите могат да бъдат буферирани и небезопасни, което позволява гъвкаво управление на синхронизацията и обмена на данни между горутините.