Remove hackery
This commit is contained in:
parent
12c49bbe75
commit
28ea9ae2f4
@ -93,28 +93,18 @@ class ServerBase(object):
|
||||
loop.set_exception_handler(self.on_exception)
|
||||
|
||||
shutdown_event = asyncio.Event()
|
||||
try:
|
||||
async with TaskGroup() as group:
|
||||
server_task = await group.spawn(self.serve(shutdown_event))
|
||||
# Wait for shutdown, log on receipt of the event
|
||||
await shutdown_event.wait()
|
||||
self.logger.info('shutting down')
|
||||
server_task.cancel()
|
||||
finally:
|
||||
await loop.shutdown_asyncgens()
|
||||
|
||||
# Prevent some silly logs
|
||||
await asyncio.sleep(0.001)
|
||||
# Finally, work around an apparent asyncio bug that causes log
|
||||
# spew on shutdown for partially opened SSL sockets
|
||||
try:
|
||||
del asyncio.sslproto._SSLProtocolTransport.__del__
|
||||
except Exception:
|
||||
pass
|
||||
async with TaskGroup() as group:
|
||||
server_task = await group.spawn(self.serve(shutdown_event))
|
||||
# Wait for shutdown, log on receipt of the event
|
||||
await shutdown_event.wait()
|
||||
self.logger.info('shutting down')
|
||||
server_task.cancel()
|
||||
|
||||
self.logger.info('shutdown complete')
|
||||
|
||||
def run(self):
|
||||
loop = asyncio.get_event_loop()
|
||||
loop.run_until_complete(self._main(loop))
|
||||
loop.close()
|
||||
try:
|
||||
loop.run_until_complete(self._main(loop))
|
||||
finally:
|
||||
loop.run_until_complete(loop.shutdown_asyncgens())
|
||||
|
||||
Loading…
Reference in New Issue
Block a user