select.epoll question

Kushal Kumaran kushal.kumaran+python at gmail.com
Thu Feb 7 21:06:52 EST 2013


Paul Rubin <no.email at nospam.invalid> writes:

> Chris Angelico <rosuav at gmail.com> writes:
>> Yeah, I figured fileno() probably wouldn't be news to you. I don't
>> suppose there's anything convenient in the rest of your application
>> that makes such a list/dict plausible? 
>
> In fact it's rather annoying, sockets are created and destroyed in
> multiple places in the program.  I have to be careful about leaking them
> in case a thread crashes, etc.  I dealt with the poll issue by manually
> tracking what was happening, but it wasn't pretty, so I wondered if
> there was a better solution I was overlooking.  I don't want to mess
> with it too much more since I'm planning a completely different approach
> for the next version of the program.

You don't have to maintain the mapping globally.  You could wrap
socket.epoll in a class of your own that manages the mapping, and passes
through calls to socket.epoll.  That would make the wrapper a drop-in
replacement for socket.epoll.

-- 
regards,
kushal



More information about the Python-list mailing list