[Python-Dev] Getting an optional parameter instead of creating a socket internally
exarkun at twistedmatrix.com
exarkun at twistedmatrix.com
Sun Jul 11 21:06:52 CEST 2010
On 03:11 pm, jcea at jcea.es wrote:
>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>On 13/04/10 04:03, exarkun at twistedmatrix.com wrote:
>>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
>
>Jean-Paul, I would like to have this for 3.2. How is the PEP going?.
It's still little more than an outline. You can see it here:
http://twistedmatrix.com/trac/wiki/ProtocolPEP
And if you're interested in helping, we can figure out a way to do that
(you can have edit permission on the wiki or we can move the document
elsewhere, whatever).
Jean-Paul
More information about the Python-Dev
mailing list