asyncio documentation suggets to use:
---
import asyncio, sys
if sys.platform == 'win32':
loop = asyncio.ProactorEventLoop()
asyncio.set_event_loop(loop)
---
https://docs.python.org/dev/library/asyncio-eventloops.html
But this code doesn't work with asyncio.run() which creates a new event loop with the current policy, and the default policy on Windows is to use SelectorEventLoop.
I cannot find a "Proactor event loop policy" in asyncio, nor how to change the default policy to use Proactor event loop.
The workaround is to not use asyncio.run() which has been added in Python 3.7. |