New submission from Константин Волков:

When you close asyncio socket server it closes all connection sockets, remove 
its readers and do "cancel" for readers. Problem is that, that after this 
reader tasks are leaved alone in "cancelling" state. They wouldn`t be really 
cancelled, because they need a loop step for that. But they are not in loop 
now(they suggest execution throught selector, but they not presented there 
after removal). Cancelling step woldn`t be done and tasks wouldn`t be really 
finished, and no finishing actions can be done.
I think that It is good idea such tasks to "ready" queue, so they can be 
executed in normal task way after removing from selector.

components: asyncio
messages: 277019
nosy: gvanrossum, yselivanov, Константин Волков
priority: normal
severity: normal
status: open
title: Closing server in asyncio is not efficient
versions: Python 3.5, Python 3.6

Python tracker <>
Python-bugs-list mailing list

Reply via email to