Sobes.tech
Junior — Senior
74

Пример использования канала и горутины в Go

Companies where asked:

Lamoda Tech
Task condition

Какой вывод будет у следующей программы на Go?

package main

import (
 "fmt"
 "time"
)

func main() {
 dataCh := make(chan int)
 go func() {
  dataCh <- 1
 }()
 time.Sleep(time.Millisecond * 500)
 close(dataCh)

 for val := range dataCh {
  fmt.Println(val)
 }

 time.Sleep(time.Millisecond * 100)
}