close poll object after loop stopped

This commit is contained in:
clowwindy 2015-08-03 23:54:30 +08:00
parent baad209160
commit 58df1d82d0

View file

@ -98,6 +98,9 @@ class KqueueLoop(object):
self.unregister(fd) self.unregister(fd)
self.register(fd, mode) self.register(fd, mode)
def close(self):
self._kqueue.close()
class SelectLoop(object): class SelectLoop(object):
@ -135,6 +138,9 @@ class SelectLoop(object):
self.unregister(fd) self.unregister(fd)
self.register(fd, mode) self.register(fd, mode)
def close(self):
pass
class EventLoop(object): class EventLoop(object):
def __init__(self): def __init__(self):
@ -216,6 +222,9 @@ class EventLoop(object):
callback() callback()
self._last_time = now self._last_time = now
def __del__(self):
self._impl.close()
# from tornado # from tornado
def errno_from_exception(e): def errno_from_exception(e):