
エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
【Golang】ゴルーチン④range,close - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
【Golang】ゴルーチン④range,close - Qiita
package main //channelのrangeとclose //結果を随時出力 import ( "fmt" ) func goroutin2(s []int, c ... package main //channelのrangeとclose //結果を随時出力 import ( "fmt" ) func goroutin2(s []int, c chan int) { sum := 0 for _, v := range s { //全部足す sum += v //すぐに送る c <- sum } //終わったらchannelを閉じる //これ以上ない時は閉じる //閉じないと、中身以上取り出そうとしエラーになる close(c) } func main() { s := []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10} //実質1つしか入らないので、バッファは1でもいい c := make(chan int, len(s)) goroutin2(s, c) //go goroutine1(s, c)の結果をforで回す //chan