[Python-Dev] Getting an optional parameter instead of creating a socket internally (was: Re: stdlib socket usage and " keepalive" )

exarkun at twistedmatrix.com exarkun at twistedmatrix.com
Tue Apr 13 04:03:19 CEST 2010


On 12 Apr, 11:19 pm, jcea at jcea.es wrote:
>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>On 04/13/2010 12:47 AM, Antoine Pitrou wrote:
>>Jesus Cea <jcea <at> jcea.es> writes:
>>>
>>>PS: "socket.setdefaulttimeout()" is not enough, because it could
>>>shutdown a perfectly functional connection, just because it was idle 
>>>for
>>>too long.
>>
>>The socket timeout doesn't shutdown anything. It just puts a limit on 
>>how much
>>time recv() and send() can block. Then it's up to you to detect 
>>whether the
>>server is still alive (for example by pinging it through whatever 
>>means the
>>application protocol gives you).
>
>A regular standard library (let say, poplib) would abort, after getting
>the timeout exception.
>>>4. Modify client libraries to accept a new optional socket-like 
>>>object
>>>as an optional parameter. This would allow things like transparent
>>>compression or encryption, or to replace the socket connection by
>>>anything else (read/write to shared memory or database, for example).
>>
>>This could be useful too.
>
>I have been thinking about this for years. Do you actually think this
>could be formally proposed?.

Every once in a while I make a little bit more progress on the PEP I'm 
working on for this.  If you want to talk more about this, you can find 
me in #python-dev or #twisted on freenode.

Jean-Paul


More information about the Python-Dev mailing list