go-处理字符串导致内存溢出
2024-08-24 03:55:30
今日用go来做字符的“+”连接操作,每次连接的字符串大致有10M左右,循环连接100次,直接导致go内存溢出了。
// Text project main.go package main import ( "io/ioutil" "log" "os" ) func main() { log.Println("开始") userFile := "D:\\txt\\2.txt" //读文件 readbuf, _ := ioutil.ReadFile(userFile) //文字数据处理 log.Println("开始处理数据") strcontent := string(readbuf) ; i < ; i++ { strcontent += strcontent + "和气生财" } log.Println("数据处理结束") buf := []byte(strcontent) //写文件 ioutil.WriteFile(userFile, buf, os.ModeExclusive) }
所报的异常:
runtime: out of memory: cannot allocate 335872000-byte block (998440960 in use)
fatal error: out of memory
一样的业务逻辑用NET来处理则是正常运行,没有出现内存溢出的情况,看来golang的垃圾回收和内容分配还是不够成熟,需要加强
最新文章
- Android 蓝牙打印超时问题的处理
- iOS-数据持久化基础-JSON与XML数据解析
- hdu 4003 树形dp+分组背包 2011大连赛区网络赛C
- cache设计,以及多核造成的不一致性以及解决方案
- Delphi调用C++写的dll示例
- python学习第十六天 --继承进阶篇
- ueditor插入百度音乐无法播放-403 问题
- 在asp.net web api中利用过滤器设置输出缓存
- json串转化成xml文件、xml文件转换成json串
- python time模块总结
- OpenJudge cdqz/Data Structure Challenge 2 (Problem 5822) - 可持久化线段树
- 请问微信小程序let和var以及const有什么区别
- 彻底理解一致性哈希算法(consistent hashing)
- ajax jsonp的跨域请求
- vue项目打包后css背景图路径不对的问题
- Java基础—集合
- shell小记
- java-实用的sql语句
- 一个下载git库代码的脚本
- VC++异常捕获??