基本上我对Go 1.2有同样的问题,如下所述:
https://groups.google.com/forum/#!topic/golang-nuts/TYai0DVoYwg
有没有办法增加我的Go程序的StackMin而不重新编译Go?
小智 5
StackMin被编译到运行时,因此如果不重新编译Go,就无法更改它.你可以在这里找到常量:http://golang.org/src/pkg/runtime/stack.h#L72
如果您无法重新编译Go,您可以尝试通过人为增加程序使用的堆栈空间量来解决热拆分问题(即var foo [2<<10]byte在热拆分函数调用之前插入代码中) - 但这可能是命中或未命中,可能需要在程序更改时重新调整.
正如Dmitry所提到的,Go 1.3计划具有连续的堆栈(不是堆栈段的链接列表),这些堆栈将根据需要重新分配和复制.https://docs.google.com/document/d/1wAaf1rYoM4S4gtnPh0zOlGzWtrZFQ5suE8qr2sD8uWQ/pub
| 归档时间: |
|
| 查看次数: |
71 次 |
| 最近记录: |