go io优化

问题是这样的,我将一串json字符,写入到一个文件中,json字符内的内容,改变,我就再次写入到文件中。代码如下。

bytes, err := json.Marshal(&t.localConvertInfo)
if err != nil {
    return
}
file, err := os.Create(fmt.Sprintf("./%s", t.convertFileName))
if err != nil {
    return
}
defer file.Close()
file.Write(bytes)

运行程序之后,发现非常卡,就在想有什么好的方法进行优化吗? 我目前的想法是,只打开一次这个文件,之后都重新设置偏移量。

已邀请:

tt_0411 - Less is better.

赞同来自:

1, 首先要确认是否卡在这里; 2, 是否可以减少写文件的次数, 比如每隔多少时间写一次; 3, 是否可以减少打开文件的次数, 和你说的说法相似, 不过可以考虑追加写, 而不是重置偏移; 4, 最后的最后, 检查下文件系统是否有异常.

要回复问题请先登录注册