Yami Odymel https://invade.tw/ says to OwO
/go@mmis_js_bot package main import ( "fmt" "strconv" ) func main() { // 建立「完成」頻道。 done := make(chan bool) // 將迴圈丟到另一個行程執行。 go func() { // 第一層 Goroutine 迴圈。 for i := 0; i < 100; i++ { go func(i int) { // 輸出層數。 fmt.Println(i) // 將迴圈丟到另一個行程執行。 go func(i int) { // 第二層 Goroutine for j := 0; i < 100; i++ { // 輸出層數。 go func(i, j int) { fmt.Println(strconv.Itoa(i) + "." + strconv.Itoa(j)) }(i, j) // 如果是最後的迴圈則發送完成資訊。 if j == 100 { // 向「完成」頻道發送資訊。 done <- true } } }(i) }(i) } }() // 除非「完成」頻道接收到任何訊息,否則卡在這裡。 <-done }