Java - чтение файла с помощью службы executor дает ошибку 409 - PullRequest
0 голосов
/ 05 февраля 2020

Как прочитать один и тот же файл дважды, в разных задачах, используя службу executor?

Я использовал приведенный ниже пример структуры кода, но при чтении одного и того же файла одновременно выдает ошибку 409. Как решить эту проблему?

//Sample code
ExecutorService ee = ExecutorService.FixedThread(2);

Callable<Object> C1 = ()-> {
InputStream in = new inputStream("https://server.com/file1");
BufferReader br = new BufferReader(in);
SysOut(br.lines);
                           }

Callable<Object> C2 = ()-> {
InputStream in = new inputStream("https://server.com/file1");
BufferReader br = new BufferReader(in);
SysOut(br.lines);
                           }

List task = new list();
task.add(c1);
task.add(c2);

ee.invokeAll(task);
ee.shutDown();

Каждая отдельная задача работает нормально.

Но когда обе задачи выполняются одновременно, обе задачи пытаются получить доступ к одному и тому же файлу и выдают ошибки с ошибкой 409. ошибка конфликта.

Как ее решить?

Примечание. Мне нужно одновременно вызывать один и тот же файл из другой задачи. Я не хочу читать файл один раз и сохранять содержимое в списке. Затем используйте этот список для дальнейшей обработки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...