在函数或者方法前面加上关键字go,即创建一个并发运行的新goroutine。
go func()会在函数结束前才调用,
如果主函数返回时。当这种情况发生时,所有goroutines会终止,程序退出
因为有延时runtime.Gosched()所以go的匿名函数就有可能执行(看延迟多久执行主函数),主函数一结束,就停止所有gorountines
因为主函数一结束,就停止所有gorountines
当启动多个goroutine时,如果其中一个goroutine异常了,并且我们并没有对进行异常处理,那么整个程序都会终止,所以我们在编写程序时候最好每个goroutine所运行的函数都做异常处理,异常处理采用recover