Sobes.tech
Senior

Jaká entita se používá k přenosu dat mezi gorutinami?

sobes.tech AI

Odpověď od AI

V jazyce Go se pro přenos dat mezi gorutinami používá entita nazývaná kanál (channel). Kanály umožňují bezpečně vyměňovat data tím, že synchronizují provádění gorutin.

Příklad použití kanálu:

ch := make(chan int) // vytvoření kanálu pro přenos int

go func() {
    ch <- 42 // odeslání hodnoty do kanálu
}()

hodnota := <-ch // přijetí hodnoty z kanálu
fmt.Println(hodnota) // vypíše 42

Kanály mohou být s bufferem a nejsou bezpečné, což umožňuje flexibilní řízení synchronizace a výměny dat mezi gorutinami.