为了账号安全,请及时绑定邮箱和手机立即绑定

ioutil.ReadFile()中出现错误

ioutil.ReadFile()中出现错误

Go
子衿沉夜 2021-04-30 11:11:21
我正在Go中运行一个程序,该程序在读取文件后会连续发送数据/proc/stat。使用ioutil.ReadFile("/proc/stat") 大约运行14个小时后,我得到了错误:too many files open /proc/stat 单击此处以获取代码段。我怀疑f.CloseGo有时会忽略延缓,或者正在跳过它。代码段(以防play.golang.org早于stackoverflow.com死亡):package mainimport ("fmt";"io/ioutil")func main() {    for {        fmt.Println("Hello, playground")        fData,err := ioutil.ReadFile("/proc/stat")        if err != nil {            fmt.Println("Err is ",err)        }           fmt.Println("FileData",string(fData))    }}
查看完整描述

2 回答

?
婷婷同学_

TA贡献1844条经验 获得超8个赞

如果确定执行f.Close(),它仍然存在问题,可能是因为您的其他连接(例如与MYSQL的连接)也会引起问题,尤其是在循环中,并且您忘记了关闭连接。


总是这样 :


db.connection....

**defer db.Close()**


If it is in loop


loop

    db.connection....

    **defer db.Close()**

end

不要将db.connection放在循环之前


查看完整回答
反对 回复 2021-05-10
  • 2 回答
  • 0 关注
  • 442 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信