1,协程
协程是GO语言中最重要的特征,也是最厉害的功能。协程的特点就是非常轻量级,切换非常高效,能够创建成千上万个协程,这些是线程和进程无法无法比拟的;协程在执行的过程中,如果遇到阻塞(比如遇到网络IO,sleep等),会自动切换出来,去执行其他协程,这种方式能够充分利用cpu资源。
协程是使用是在方法前加go关键字,或者go后面匿名方法。
func f1(){ //定义一个方法
fmt.Println("123")
}
go f1() //协程方法运行方法f1
go func(){ //协程方式启动匿名方法
fmt.Println("func")
}()
2,函数多返回值
好多语言的方法只能有一个返回值或者一个返回对象,但是go语言的方法能够同时返回多个值或者多个对象。
单个返回值,和其他语言一样
func f1() string{ //定义一个方法,返回值是string类型
return "abc"
}
var s string = f1() //或者s := f1()
多个返回值,必须用多个参数接收,如果不需要用某个参数,用_占位
func f1() (string,int){ //定义方法,返回值类型有string,int同时返回两个值
return "abc",32
}
s,i :=