kushal.kumaran+python at gmail.com
Fri Feb 8 03:06:52 CET 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.
More information about the Python-list