admin管理员组

文章数量:1660119

解决方案:系统进行资源强制回收//System.gc();{不建议使用}

关闭流(未及时关闭会内存溢出)

问题--- 文件删除失败

(后来发现是被进程占用)

发现问题--第一次测试10个文件上传成功8个,第二次测试还有10个文件

解决思路:1.查看代码 file.delete();删除失败

2.查看是否有流未关闭(大致看了下没有使用流直接调用一工具)

3.手动删除提示被Java se进程占用(因为这是个批处理,我以为这是个进程!!!)

4.代码添加如果删除失败就强制垃圾回收,文件删除成功

这也是小编这一次碰到这样的情况,所以没管什么遗留问题只要满足现状就行,惭愧 啊

偶然一次跟我们架构师聊到了这件事,他说垃圾强制回收尽量不要手动这个是jvm的工做,他说这种情况一般不会发生肯定是没有关闭流,小编回来就一行一行的过代码,果然在一不显然处引用了流,流未关闭  (想死的心都有了)....万幸的是,还好在上生产环境前发现了并解决了这个问题,不然得埋多大的坑(录音文件一天的量很大)

1)关流

2)测试  (删除成功)

总结:一定要细心,代码容不得半点马虎

本文标签: 进程文件Java