Go言語の並行処理ライブラリ「coop」
goroutineとchannelを使った並行処理をわかりやすく書ける
こんな感じ
3秒後に関数を実行
// 指定した時刻に関数を実行 done := coop.At(time.Now().Add(time.Second*3), func() { fmt.Println("Hello, world") }) <- done
1分後まで、3秒ごとに関数を実行
// 指定した時刻まで、指定した期間ごとに関数を実行 done := coop.Until(time.Now().Add(time.Minute), time.Second*3, func() { fmt.Println("Hello world") }) <-done
今日ソースを読んでいたけど、goroutineの書き方の勉強になる。