2014-01-12 3 views
0

Я не мог найти никакого примера о том, как использовать сервлет aysnc IO с асинхронной обработкой. В частности, я хочу знать, должны ли быть подключены читатели и писатели-листы к входным и выходным потокам сервлетов ПЕРЕД или ПОСЛЕ того, как мы передаем асинхронный контекст в пользовательский поток.Как использовать сервлет asyncIO с асинхронной обработкой?

Если взять в качестве примера this, в какой части кода следует указать request.getInputStream().setReadListener()? Вы можете увидеть это использовать метод пример here

+0

@SotiriosDelimanolis сделано – user375868

ответ

0
  • Если вы отправите контекст пула потоков во-первых, первый (и только?), Что другой поток будет делать это, чтобы прикрепить ReadListener.
  • Если вы прикрепляете ReadListener в сервлет, я не вижу, что будет делать пользовательский пул потоков, если только что-то не будет сделано до того, как тело запроса будет прочитано. ReadListener будет вызываться потоком контейнера.

Так что, если есть какая-то работа, которая должна быть выполнена, прежде чем начинать читать тело запроса.

  • Если вы можете прочитать весь запрос в памяти, вы можете отправить запрос в пул потоков после прочтения всего запроса.
  • Если нет, вы можете отправить куски запроса в пул потоков, если это необходимо.
Смежные вопросы