将coroutine从事件线程外部推送到事件线程的pythonic方法是什么?
答案 0 :(得分:2)
要明确一点:通常asyncio在单线程中运行。并发不是由线程提供的,而是通过使用单个事件循环来运行不同的协同程序。
如果您想要同时提交协同程序而不等待结果,则应使用asyncio.ensure_future
(create_task
中的task)创建difference。
但是如果您的应用程序使用多个线程,并且您希望将协程从一个线程运行到另一个线程中运行的事件循环,则应使用run_coroutine_threadsafe
。这是另一个线程中运行事件循环的好example,并从主线程中提交协同程序。