引出
计算1-90000中的素数
1.传统方法用for循环判断
2.用并发或者并行,分配给多个协程去完成
协程
一个go线程上可以跑多个go协程。
go的主线程又成为go的线程或理解为进程。
协程有独立栈空间,共享程序堆空间,调度由用户控制,是轻量级的线程。
入门
package main
import(
"fmt"
"strconv"
"time"
)
func test(){
for i:=1; i<=10; i++{
fmt.Println("test() hello world"+ strconv.Itoa(i))
time.Sleep(time.Second)
}
}
func main(){
go test() //开启一个协程!!!!!!!
for i:=1; i<=10; i++{
fmt.Println("main() hello world~~~~"+ strconv.Itoa(i))
time.Sleep(time.Second)
}
}