go字符串转数组go-byte数组最⼤的长度
本来想打算⽤go来处理⼀个1G左右的txt⽂本的,但是在去读取的时候就报内存溢出了,提⽰数组已经⽆法在分配。
⽤的是:ioutil.ReadFile ⽅法来读取⽂本,它的返回值是⼀个[]byte 数组,内存溢出的原因就是[]byte数组已经超过最⼤限度值了,于是就想探清⼀下 go  到底能给[]byte分配多长的数组
var arry [804254644]byte
log.Println("读取完毕", len(arry))
很简单的⼀段代码,就是⼀个简明的声明,不做任何其他的处理,经过不断的调试,发现声明的数组长度如果⼤于 804254644 这个长度的就会报异常,⼩于的则正常,难道 804254644 就是 go 的[]byte的最⼤长度?
本⼈的机器是4G内存,[804254644]byte的容量⼤致是 766M ,这也太⼩了吧,难道⾕歌就只能让他的go最⼤只能处理766M的⽂件?但愿还是我的环境问题⽽不要是go的问题

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。