except:
obj.handle_error()
+def _exception (obj):
+ try:
+ obj.handle_expt_event()
+ except ExitNow:
+ raise
+ except:
+ obj.handle_error()
+
def readwrite(obj, flags):
try:
if flags & (select.POLLIN | select.POLLPRI):
if map:
r = []; w = []; e = []
for fd, obj in map.items():
+ e.append(fd)
if obj.readable():
r.append(fd)
if obj.writable():
continue
write(obj)
+ for fd in e:
+ obj = map.get(fd)
+ if obj is None:
+ continue
+ _exception(obj)
+
def poll2(timeout=0.0, map=None):
# Use the poll() support added to the select module in Python 2.0
if map is None: