Go1.13的坑:无法结束Goroutine

背景

  • 本人作为一名SRE,想用Go模拟Cpu占用100% 1秒钟,但是在Go1.13上遇到了问题,1s后Goroutine不会停止。
  • 只要用了for{},Goroutine就无法结束,即使主Goroutine结束。
  • 在Go1.14及以上版本解决了这个问题。

代码

package main
import (
    //"fmt"
)
import "time"

func Test1() {
    for {
        //fmt.Println("hello")			//随便在for循环中加个语句,就可以停止了
    }
}
func main() {
    go Test1()
    time.Sleep(1 * time.Second)
}

其他参考文章

  • https://blog.51cto.com/u_15023263/3788803
posted @ 2022-04-17 01:16  NetRookieX  阅读(12)  评论(0编辑  收藏  举报