Одновременные подключения - PullRequest
0 голосов
/ 08 февраля 2011

У меня есть один поток для обработки каждого нового соединения TCP / IP. Что произойдет, если два одновременных запроса будут отправлены на один и тот же порт? Один будет отклонен? Есть ли решение этой проблемы, или я должен повторить попытку подключения?

Спасибо

1 Ответ

2 голосов
/ 08 февраля 2011

Проблема, которую вы считаете существующей, не существует. Вы даже можете обрабатывать несколько клиентов в одном потоке, если действительно хотите. Bind, Listen, loop и принимать новые соединения. Ядро обрабатывает фактический стек tcp / ip, поэтому после того, как вы связываетесь и начинаете слушать, вы в основном указываете ядру обрабатывать новые соединения, поступающие на указанный вами порт. Тот факт, что вы не блокируете «Принять» в момент установления соединения, не означает, что вы не сможете обработать эту попытку подключения.

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

...