Skip to content

Instantly share code, notes, and snippets.

@ekusiadadus
Created November 6, 2022 19:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ekusiadadus/90b991a6d4f948b702321b9a61e12b79 to your computer and use it in GitHub Desktop.
Save ekusiadadus/90b991a6d4f948b702321b9a61e12b79 to your computer and use it in GitHub Desktop.
channel2 channel2
package main
func goroutine1(s []int, c chan int) {
sum := 0
for _, v := range s {
sum += v
}
c <- sum
}
func goroutine2(s []int, c chan int) {
sum := 0
for _, v := range s {
sum -= v
}
c <- sum
}
func main() {
s := []int{1, 2, 3, 4, 5}
c := make(chan int)
go goroutine1(s, c)
go goroutine2(s, c)
x := <-c
y := <-c
println(x)
println(y)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment