Использование сокета, который не связан или не связан, но не слушает - PullRequest
0 голосов
/ 08 июня 2018

Как побочный вопрос, можно ли поменять местами bind и listen?НапримерЯ хотел бы сохранить дескриптор порта или файла некоторое время, а затем перепривязать и снова прослушать?

Мне также любопытно обоснование этого дизайна.Во всех примерах, которые я видел, потоковые сокеты сначала связываются, а затем начинают слушать.То есть bind и listen должны вызываться отдельно, тогда как сокет между ними никоим образом не используется.Это потому, что эти вызовы более или менее разделены и ортогональны с точки зрения ОС?

1 Ответ

0 голосов
/ 09 июня 2018

Вы не можете listen() для несвязанного сокета, и вы не можете bind() сокет, который уже связан.Они являются отдельными операциями, поскольку bind() может использоваться как для клиентов, так и для серверов, тогда как listen() может использоваться только для серверов.

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