zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Go语言圣经-Goroutines和线程详解编程语言

2023-06-13 09:20:37 时间

1.动态栈:

1)线程都有一个固定大小的内存块(一般会是2MB)来做栈
2)一个goroutine会以一个很小的栈开始其生命周期,一般只需要2KB,不是固定的;栈的大小会根据需要动态地伸缩

2.Goroutine调度:

1)线程是使用硬件定时器进行的调度,速度慢
2)Go是使用的自己的调度器,在线程的基础上调度,不需要进入内核的上下文

3.GOMAXPROCS环境变量可以确定启动多少线程同时执行go代码
4.goroutine没有可以被程序员获取到的身份(id)的概念

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/12523.html

cgo