实验室项目中有一个文件上传的功能,因为之前我使用的new Thread来做的,线程不好管理,所以我改用了ThreadPoolExecutor来做,没想到出现了如下问题:
原因:

然后我从网上看了很多方式,无非这么几种解决方案:
- 1、修改配置,指定临时文件存储路径
- 2、 修改multipart的最大文件大小,当文件数大于该值时,就不会有临时文件产生
上面两种方法对我均无效!
最终的解决方案是:
InputStream is = file.getInputStream();
把该输入流放到主线程中获取,文件流信息存储在内存中,多线程时也可以获取到文件内容,从而解决了问题。
882

被折叠的 条评论
为什么被折叠?



