ファイルを並列にダウンロードするためにExecutorServiceを使用してマルチスレッドを実装しようとしています。以下は私のコードです
public void downloadFiles(List<String> filenames, final String fileSavePath) {
if (filenames != null && filenames.size() > 0) {
List<Callable<Void>> jobs = new ArrayList();
for (final String fileName : filenames) {
jobs.add(new Callable() {
public Void call() throws Exception {
downloadFile(fileName, fileSavePath);
return null;
}
});
}
performJobs(jobs);
}
}
私の要件は、すべてのファイルが正常にダウンロードされた後、このメソッドからステータスを返したいということです。これを行う方法がわかりません。外部クラスから内部クラスの変数にアクセスできません。
どんなアドバイスもありがたいです。
ありがとう