2015-02-22 2 views

ответ

2

Не должно быть никаких проблем. Но может быть, поскольку интерфейсы berkley и WSA не должны смешиваться. Я смешал сокеты и WSASelect в проекте без проблем, поскольку возвращаемый дескриптор SOCKET тот же, независимо от того, какую команду вы использовали для его получения.

Но это ИМХО плохой стиль, чтобы смешивать его там, где это не нужно. Поэтому, если вы уже использовали стиль WSA, придерживайтесь его.

Вы также должны посмотреть на функцию AcceptEx().

2

Одна из серьезных причин для использования AcceptEx() заключается в том, чтобы избежать использования другого потока, который только проснулся, чтобы обрабатывать новые соединения.

Будьте осторожны с AcceptEx(), хотя и, в идеале, не используйте параметр «принять и прочитать данные», который доступен, поскольку это делает его довольно простым для DOS-сервера, открывая соединения и НЕ отправляя данные и код, необходимый для того, чтобы избежать потенциал для атаки DOS довольно сложный, чтобы получить право.

Смежные вопросы