|
Каналы — это трубы, соединяющие конкурентные
goroutine. Ты можешь отправлять значения в каналы
из одной goroutine и получать эти значения в другой.
|
|
|
|

package main
|
|
|
import "fmt"
|
|
|
func main() {
|
|
Создай новый канал с помощью make(chan val-type).
Каналы типизированы по значениям, которые они передают.
|
messages := make(chan string)
|
|
Отправь значение в канал, используя синтаксис
channel <-. Здесь мы отправляем "ping" в канал
messages, созданный выше, из новой goroutine.
|
go func() { messages <- "ping" }()
|
|
Синтаксис <-channel получает значение из канала.
Здесь мы получаем сообщение "ping", отправленное
выше, и выводим его.
|
msg := <-messages
fmt.Println(msg)
}
|