Golang Go语言中能否设置初始化堆栈的容量?
Golang Go语言中能否设置初始化堆栈的容量?
Go 语言能否像 Java 一样,对 Go 语言运行时,设置初始化堆栈的容量?如果可以,请教一下设置方法!
6 回复
为啥要这样干? golang 不是虚拟机语言。
好奇为什么有这个需求
初始化栈的大小没必要吧,goroutine 本来就是可以动态扩展栈空间大小的,这样对于突然的高并发场景,用协程栈空间可以动态扩展的优点 可以节省不少内存。
如果你是说线程栈大小,那可能就是 Linux 设定的线程栈大小
不能,goroutine 的执行栈是可以在运行时自动调整的。初始栈的 2KB 大小是经过优化确定的。最大根据系统不同可以是 1GB ( 64 )或者 250MB ( 32 )。