tcp networking question (CLOSE_WAIT)
Martin A. Brown
martin at linux-ip.net
Thu Feb 25 13:56:00 EST 2016
Hello again Ray,
>> >I'm new to python networking. I am waiting TCP server/client app by
>> >using python built-in SocketServer. My problem is if client get
>> >killed, then the tcp port will never get released, in CLOSE_WAIT
>>
>> I did not thoroughly review your code (other than to see that you
>> are not using SO_REUSEADDR). This is the most likely problem.
>>
>> Suggestion:
>>
>> man 7 socket
>>
>> Look for SO_REUSEADDR. Then, apply what you have learned to your
>> code.
>
>it's not I can't bind the address, my problem is: server is long
>run. if client die without "disconnect" then server will leak one
>socket.
Sorry for my trigger-happy, and incorrect reply.
After so many years, I should know better than to reply without
completely processing questions. Apologies.
>by using the built-in thread socket server. the extra tcp port are
>opened by built-in class itself. if the handler() is finish
>correctly (the line with break) then this socket will get cleaned
>up. but if client dies, then I am never get out from that True
>loop. so the socket will keep in close_wait
>
>I fond the issue. it's my own stupid issue.
>i did "continue" if no data received.
>just break from it then it will be fine
Well, I'm glad you found the issue.
Best of luck,
-Martin
--
Martin A. Brown
http://linux-ip.net/
More information about the Python-list
mailing list