[CAsyncSocket] смерть процесса
Вообще 2003 вроде довольно хорошо подбирает мусор за убитыми процессами.
Код е?
Ну или ему удалось сделать зомби.
Инетересно, это не обыкновенный TIME_WAIT у него случайно? Хотя почему тогда netstat ESTABLISHED показывает, непонятно.
Ну да, я думаю, что на сокете какие-то незавершенные операции висят, поэтому он и не закрываецо.
А вообще я не очень понимаю, чем автору мешает открытый сокет. Ну, в случае если ось сознательно решила оставить его открытым. Он (автор) биндится с фиксированного порта на фиксированный порт и не может открыть новый канал? А зачем?
честно говоря, у меня аж челюсть отвисла, когда я это увидел
логика приложения такая, что при аварийном вырубинии процесса, сервер должен узнать об этом как можно скорее
Keep-alive не катит?
придецо делать, видимо
всем спасибо, дело было в том, что хэндл наследовался дочерним процессом
Оставить комментарий
otets-mihail
Есть прога, использующая CAsyncSocket для соединения с серверомв процессе работы netstat -anb показывает
TCP ... ESTABLISHED
[mTest.exe] <pid моей программы>
далее, программа внезапно падает
после этого открываем нетстат, и читаем про наше соединение:
TCP ... ESTABLISHED
[System] <несуществующий пид>
и соединение продолжает спокойно висеть...
Вопрос, как такого избежать, то есть сделать, чтобы сокет сразу закрывался.