我有一个目录,其中动态保存了很多文件。目前有一项任务不时列出文件并按顺序处理它们(写入数据库)。由于文件数量不断增加,需要对这些文件进行并行处理。你能给我一些想法和java中的代码示例吗?
最佳答案
使用 ExecutorService。创建一个 Executors.newFixedThreadExecutor(n);
您可能可以将文件处理变成单个可运行(或可调用)任务,并让它传入一个您可以处理的文件
ExecutorService service = Executors.newFixedThreadExecutor(10);
for(final File file : directory.listFiles()){
service.submit(new Runnable(){
public void run(){
//do work here on file object
}
});
}
关于java - 并发文件处理,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5247458/