2013-08-31 102 views
2

我在我的拱形流浪箱的$GOPATH中运行go build
但它打印出Golang:malloc堆初始化之前的恐慌

runtime: panic before malloc heap initialized 
fatal error: runtime: cannot allocate heap metadata 

和盒子是3.10.9-1-ARCH x86_64,内存242M。

为什么我不能在框中创建go文件?

在此先感谢。

回答

2

看起来这是由虚拟内存不够

$ ulimit -v 242000 
$ go build prog.go 
runtime: panic before malloc heap initialized 
fatal error: runtime: cannot allocate heap metadata 

64位围棋需要大量的virtual memory space but not necessarily that much real memory造成的。

你可以通过向容器分配更多的内存来解决这个问题。

你也可以玩/proc/sys/vm/overcommit_memory的设置。

您也可以尝试将swap分配给容器(如果可能)。