我想要实现一个遍历获取文件内容的功能,但是解析文件太慢,想搞成异步的,理想的执行结果为System瞬间输出从0到文件总数不阻塞,解析功能异步执行,结果现在感觉从0到文件总数输出会因为文件解析的问题发生阻塞,请大佬们指点一下,谢谢!
while (true){
if (atomicInteger.get() >= files.length) {
break;
}
System.out.println(atomicInteger.get());
CompletableFuture<Article> future = CompletableFuture.supplyAsync(new Supplier<Article>() {
@Override
public Article get() {
xxxxxxx
解析文件
xxxxxxx
return article;
}
}, service);
articleList.add(future.get());
atomicInteger.getAndIncrement();
}
while (true){
if (atomicInteger.get() >= files.length) {
break;
}
System.out.println(atomicInteger.get());
CompletableFuture<Article> future = CompletableFuture.supplyAsync(new Supplier<Article>() {
@Override
public Article get() {
xxxxxxx
解析文件
xxxxxxx
return article;
}
}, service);
articleList.add(future.get());
atomicInteger.getAndIncrement();
}