Форум: "WinAPI";
Текущий архив: 2006.06.18;
Скачать: [xml.tar.bz2];
ВнизSocket and TIME_WAIT Найти похожие ветки
← →
balepa © (2006-03-20 13:50) [0]Как закрыть сокет чтобы не было TIME_WAIT если возможно без уничтожения хэндла?
← →
Сергей М. © (2006-03-20 13:56) [1]
> Как закрыть сокет
> без уничтожения хэндла
Никак.
Закрытие сокета и есть его уничтожение (closesocket(хэндл)).
> чтобы не было TIME_WAIT
Что за TIME_WAIT ?
← →
balepa © (2006-03-20 14:02) [2]When a TCP connection is closed correctly, the connection changes to a TIME_WAIT state.
While a connection is in the TIME_WAIT state, the socket pair cannot be re-used.
после закрытия порт в состоянии TIME_Wait и к нему не возможно подключиться пока не пройдет несколько мин (вроде 4 или 2)
← →
Сергей М. © (2006-03-20 14:10) [3]
> balepa © (20.03.06 14:02) [2]
Откуда цитата ?
Приведи ссылку на первоисточник ..
← →
Eraser © (2006-03-20 14:17) [4]
> balepa © (20.03.06 14:02) [2]
выход один - не используй ту же "socket pair", по-умолчанию клиент должен в качестве своего (Bound) порта принимать эфимерный порт со случайным номером, т.е. указываешь 0.
← →
Rouse_ © (2006-03-20 14:28) [5]shutdown уже не в почете?
← →
balepa © (2006-03-21 05:08) [6]
> Сергей М. © (20.03.06 14:10) [3]
> Откуда цитата ?
> Приведи ссылку на первоисточник ..
http://support.microsoft.com/kb/q150523/#kb1
> Eraser © (20.03.06 14:17) [4]
Так и делаю каждый раз открывается новый порт, на моем компе работает на др. нет
> Rouse_ © (20.03.06 14:28) [5]
>shutdown уже не в почете?
Не знаю посмотрю
← →
balepa © (2006-03-21 07:27) [7]
> balepa © (21.03.06 05:08) [6]
p.s: У остальных Addres in use
← →
Сергей М. © (2006-03-21 08:12) [8]
> balepa © (21.03.06 05:08) [6]
Что-то я не вижу по приведенной ссылке ничего похожего на TAIM_WAIT.
← →
balepa © (2006-03-21 09:14) [9]экскузимуа
http://support.microsoft.com/default.aspx?scid=kb;en-us;137984
не совсем про TIME_WAIT
Но проблема вроде решилась. Закрываю сокет, создаю новый. Но почему на др. компах до этого не открывался новый порт, а "долбился" в открытый который в состоянии TIME_WAIT (при Port = 0), а у меня нормально работает в обоих случаях ?
← →
Rouse_ © (2006-03-21 15:42) [10]В крайнем сучае делай
Opt := 1;
setsockopt(FServer, SOL_SOCKET, SO_REUSEADDR, @Opt, SizeOf(Opt))
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2006.06.18;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.011 c