Как проверить, закрывается ли сокет в Повышении. Asio?

на вашей странице есть элемент шириной более 100%.

исправление может быть следующим:

body{
width: 100vw;
overflow-x: hidden;
}

, но лучше определить более широкий элемент и установить размер этого элемента [ 116]

6
задан Hali 4 May 2009 в 03:05
поделиться

4 ответа

Если одноранговое соединение было чисто закрыто, вы должны получить EOF во время чтения. В противном случае я обычно пингуюсь, чтобы выяснить, действительно ли соединение живо.

6
ответ дан 8 December 2019 в 04:31
поделиться

Доступна ли функция ускоренного просмотра? В большинстве реализаций сокетов есть способ читать данные, не удаляя их из очереди, поэтому вы можете прочитать их позже. Казалось бы, это удовлетворяет вашим требованиям. 1223 После быстрого просмотра документов asio, я не смог найти именно то, что ожидал, но это не значит, что его там нет.

Я бы предложил это для начинающих.

7
ответ дан 8 December 2019 в 04:31
поделиться

Я думаю, что, как правило, как только вы открываете сокет, вы должны немедленно начать его чтение и никогда не прекращать это делать. Таким образом вы можете сделать так, чтобы ваш сервер или клиент поддерживал как синхронные, так и асинхронные протоколы. В тот момент, когда клиент закрывает соединение, читатель сообщит вам об этом.

2
ответ дан 8 December 2019 в 04:31
поделиться

Использование error_code позволяет проверить условие, подключен ли клиент или нет. Если соединение выполнено успешно, error_code error.value () вернет 0, иначе вернет другое значение. Вы также можете проверить сообщение () из кода ошибки.

0
ответ дан 8 December 2019 в 04:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: