Как оказать давление на TCP-клиента - PullRequest
0 голосов
/ 25 апреля 2020

У меня есть Vert.x NetServer, и я принимаю одно соединение со стороны клиента, если я приостановлю сокет ReadStream, тогда я не получу никакого буфера от соединения, в то же время, если клиентская сторона продолжает отправлять сообщение, я Интересно, можно ли оказать давление на сторону клиента, чтобы остановить, а не продолжать отправку? Если это невозможно, где хранятся эти входящие данные? и могу ли я проверить, сколько данных уже поступило, но не было прочитано?

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 26 апреля 2020

Кажется, все ваши вопросы уже решены официальной документацией:

https://vertx.io/docs/vertx-core/java/#streams

Входящие сообщения хранятся в очереди записи. Если очередь записи заполнена, вы можете попросить клиента сделать паузу с помощью метода pause() и продолжить с помощью метода resume().

В качестве альтернативы, и это также описано в документации, вы можете использовать Pipe для справиться с этим для вас.

...