Well, asyncio is capable to wait for a connection and once a such is established a could be used for this purpose. It will not be high CPU load as using while loop.
I forgot to mention that the built-in asyncio Protocols or Transport must be used since there are not blockable.
I forgot to mention that the built-in asyncio Protocols or Transport must be used since there are not blockable.