Sockets question

Martin von Loewis loewis at informatik.hu-berlin.de
Thu Aug 9 08:08:44 EDT 2001


"frank booth" <killingjoke at mail.com> writes:

> I'm sending something through a TCP socket, then closing it, then my
> python script exits.

> For some reason, from time to time (and not on all machines) the
> remote end doesn't always get the data.

The system won't wait indefinitely to transmit all data.

> Maybe when the script exits the connection dies at once? Is there a
> simple solution that will not involve waiting? (its used in a
> high-load system so I should free the socket and leave the process
> as quickly as possible. It is also impossible to change the remote
> program).

I would really recommend to set the SO_LINGER option on the socket. In
that case, close will wait until the connection has been shut down (or
until the linger interval is reached).

Regards,
Martin



More information about the Python-list mailing list