|
|
|
Таймаут для connect (winsock)
|
|||
|---|---|---|---|
|
#18+
Как изменить/установить таймаут для вызова connect в блокирующем режиме? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2006, 12:21 |
|
||
|
Таймаут для connect (winsock)
|
|||
|---|---|---|---|
|
#18+
Или как сделать это в неблокирующем режиме (только не отдельным потоком). Нужно типа функции timeout_connect(SOCKET fd, ....., int timeout), может есть у кого готовые реализации. Пробовал различными способами, нормального результата не получил. Чаще всего функция WSAGetLastError() возвращает значение WSAEWOULDBLOCK и при удачном соединении и при неудачном, также пробовал select'ами - при любом исходе выходит якобы ошибка соединения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2006, 15:14 |
|
||
|
Таймаут для connect (winsock)
|
|||
|---|---|---|---|
|
#18+
Для неблокирующего режима: все правильно connect сразу возвращает SOCKET_ERROR, а WSAGetLastError() - WSAEWOULDBLOCK. После этого нужно делать select, пока сокет не станет читаемым (writefds). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2006, 16:16 |
|
||
|
Таймаут для connect (winsock)
|
|||
|---|---|---|---|
|
#18+
получилось вот как: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2006, 17:11 |
|
||
|
Таймаут для connect (winsock)
|
|||
|---|---|---|---|
|
#18+
Продолжает работать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2006, 10:53 |
|
||
|
Таймаут для connect (winsock)
|
|||
|---|---|---|---|
|
#18+
DжеFFПродолжает работать? пока продолжает, но вопрос настораживающий, в коде ошибка? WSAGetLastError() - это очепятка ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2006, 13:49 |
|
||
|
Таймаут для connect (winsock)
|
|||
|---|---|---|---|
|
#18+
Я может как то не так понял... Но этот код у меня в ряде случаев не вызывает коннекта как такового ) Ну т.е. коннект в принципе не произошел, а иногда произошел. Со структурами данных в коде я не знаком, однако реализация ТаймАута мне бы очень пригодилась. Поэтому и поинтересовался. Если можно ваше описание описанного алгоритма, то буду признателен =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.08.2006, 15:07 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=339&tid=2030645]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 233ms |
| total: | 358ms |

| 0 / 0 |
