Senior
Milyen entitás használatos adatok átadására goroutine-ok között?
sobes.tech MI
Válasz az MI-től
Go nyelvben az adatok átadására goroutine-ok között egy csatorna (channel) nevű entitást használnak. A csatornák biztonságosan cserélnek adatokat, szinkronizálva a goroutine-ok végrehajtását.
Példa a csatorna használatára:
ch := make(chan int) // létrehozunk egy csatornát az int típushoz
go func() {
ch <- 42 // érték küldése a csatornára
}()
érték := <-ch // érték fogadása a csatornáról
fmt.Println(érték) // kiírja 42
A csatornák lehetnek pufferelt és nem biztonságosak, ami rugalmasan lehetővé teszi a szinkronizáció és az adatcsere kezelését goroutine-ok között.