Мул: закрытие потока и асинхронный в очереди

У меня есть поток, который я только что преобразовал из синхронного в очередь-асинхронный. В какой-то момент в foreach я открываю файл и устанавливаю FileInputStream следующим образом:

public class FileAsStream {
    // return a fileInputStream.
    public FileInputStream fileAsStream(String fileName) {
        File file = new File(fileName);
        FileInputStream fis = null;
        try {
            fis = new FileInputStream(file);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            return fis;
        }
    }

Затем FileInputStream становится моей полезной нагрузкой, и я отправляю ее на конечные точки http или sftp. Когда поток был синхронным, я мог запустить #[payload.close()] и закрыть поток. Но теперь, когда это асинхронно, это не похоже, что я могу. Не удается, когда я пытаюсь закрыть поток. У меня вопрос, имеет ли значение, закрываю ли я поток или нет. Мул оборачивает объекты, созданные в контексте потока? Или мне нужно как-то закрыть поток после того, как он был отправлен в конечную точку?

0 ответов

Другие вопросы по тегам