フォルダー内の多数のファイルを読み取り、スレッドを使用して同時に処理しようとしています。
プログラムの構造は次のようになります。
// Assuming there are 5 files in the directory
// creating the threads
ExecutorService pool = Executors.newFixedThreadPool(5)
ExecutorCompletionService service = new ExecutorCompletionService(pool)
directory.listFiles().each { eachFile ->
   service.submit(new FileReader(eachFile, param2))
}
// the FileReader class
class FileReader implements Callable {
    File file
    String param
    FileReader(File file, String param){
        this.file = file
        this.param = param
    }
   Object call(){
      LOG.info("Processing file" + filePath)
      ConfigInfo configInfo = new ConfigInfo()
  configInfo.setFilePath(filePath);
  configInfo.setReaderUid(readerUid);
  configInfo.setPatternsMap(patternsMap);
  new LogfileDataProcessor(configObject, param).processFileContent()
   }
}
ここで call メソッドは別のオブジェクトを作成し、そのメソッドを呼び出します。
しかし、奇妙なことに、呼び出しメソッドでいくつかの行を実行した後、プログラムが終了します(その最後のステートメントに到達しません)。私はここで混乱しています。誰かが何が起こっているのかに光を当てることができますか. 私を助けてください