Sobes.tech
Junior — Middle

Ako by ste mali odovzdať kanál bežiacej gorutine v Go?

sobes.tech AI

Odpoveď od AI

Kanál v Go sa zvyčajne odovzdáva do gorutiny ako parameter funkcie, aby sa zabránilo používaniu globálnych premenných a zlepšila čitateľnosť kódu. Napríklad:

func worker(ch chan int) {
    for val := range ch {
        fmt.Println(val)
    }
}

func main() {
    ch := make(chan int)
    go worker(ch)
    ch <- 1
    ch <- 2
    close(ch)
}

Tento prístup umožňuje jasne vidieť, ktoré kanály sa používajú v gorutine.