Sobes.tech
Back to questions
Junior — Middle
87

Какими способами осуществляется взаимодействие между горутинами в языке программирования?

Companies where asked
Кредиска

Answer from AI

sobes.tech AI

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

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

package main

import (
    "fmt"
)

func worker(ch chan string) {
    ch <- "готово"
}

func main() {
    ch := make(chan string)
    go worker(ch)
    msg := <-ch
    fmt.Println(msg)
}

Кроме каналов, можно использовать другие механизмы синхронизации, например, mutex из пакета sync, но каналы считаются идиоматичным способом общения между горутинами в Go.