Golang之wait.Until 簡單測試用例
阿新 • • 發佈:2018-05-18
go routines wait.Until 測試目的,驗證wait.Until的用法
//測試wait.Until() 的用途 package main import ( "fmt" "k8s.io/apimachinery/pkg/util/wait" "time" ) type stop struct { } func main() { stopCh := make(chan struct{}) //初始化一個計數器 i := 0 go wait.Until(func() { fmt.Printf("----%d----\n", i) i++ }, time.Second, stopCh) time.Sleep(time.Second * 10) stopCh <- stop{} // 下面的形式,也是可以的 //stopCh < struct { //}{} fmt.Println("---上面的go routines 結束----") // 主程序,再休息3秒鐘,再結束 time.Sleep(time.Second * 3) fmt.Println("---主程序結束----") }
總結:
就是啟動一個協程,每隔一定的時間,就去運行聲明的匿名函數,直到接收到結束信號 就關閉這個協程
Golang之wait.Until 簡單測試用例