Гость Опубликовано 30 октября, 2002 Жалоба Поделиться Опубликовано 30 октября, 2002 есть клиентское приложение которое ждет ответа от сервера определенное время если на сокет приходит ответ то вызывается recv() иначе return TIME_IS_OUT; Как правильно передать дескриптор сокета в select() чтобы при изминении на сокете select() прикращал задержку Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 30 октября, 2002 Жалоба Поделиться Опубликовано 30 октября, 2002 ??????? man 2 select пробовал? (еще бывает man select_tut) а так непонятно, что собственно надо. Если таймаут -- для этой цели есть пятый параметр select Если вообще: fd_set wait_read; struct timeval timeout = {5, 0}; FD_ZERO(&wait_read); FD_SET(fd, &wait_read); select(fd + 1, &wait_read, NULL, NULL, &timeout) Однако же, еще раз скажу: man 2 select Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 15 ноября, 2002 Жалоба Поделиться Опубликовано 15 ноября, 2002 пятый параметр отвечает за время которое будет потрачено на опрос состояния. обычно указывается в {0,2000} (не меньше) иначе всё будет в корку сваливатся при DOS атаке (проверено) виды оссобенно на этом моменте склеивают ласты. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 19 декабря, 2002 Жалоба Поделиться Опубликовано 19 декабря, 2002 2000мкс == 2мс Мне казалось, что задавать задержку, меньшую интервала таймера, бессмысленно, так как она всё равно округлиться вверх. Типичный интервал системного таймера == 10мс (частота 100 герц). Как такой таймаут поможет против DoS атаки? И как из-за DoS атаки и select пользовательский процесс может валиться в кору? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 8 января, 2003 Жалоба Поделиться Опубликовано 8 января, 2003 Может, и не только может, когда портируешь исходники. В сквиде написанно что можно ставить и 0 НО! см срц. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.