Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "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.012 c
1-1147427482
tytus
2006-05-12 13:51
2006.06.18
как проверить что файл текстовый?


2-1149227834
kvi
2006-06-02 09:57
2006.06.18
код завершения программы


1-1147094322
Sphinx
2006-05-08 17:18
2006.06.18
Как получить интерфейс класса ?


1-1147539751
Stalker.mg
2006-05-13 21:02
2006.06.18
полоса прокрутки на главной форме


15-1147792365
Копир
2006-05-16 19:12
2006.06.18
Здравствуйте товарищи!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский