相关疑难解决方法(0)

发送asyncio任务以在其他线程中循环运行

我怎样才能异步插入任务来运行 asyncio在另一个线程中事件循环中运行?

我的动机是在解释器中支持交互式异步工作负载.我无法阻止主REPL线程.

我目前有缺陷的理解说,以下应该有效.为什么不呢?什么是实现上述目标的更好方法?

import asyncio
from threading import Thread

loop = asyncio.new_event_loop()

def f(loop):
    asyncio.set_event_loop(loop)
    loop.run_forever()

t = Thread(target=f, args=(loop,))
t.start()    

@asyncio.coroutine
def g():
    yield from asyncio.sleep(1)
    print('Hello, world!')

asyncio.async(g(), loop=loop)
Run Code Online (Sandbox Code Playgroud)

python python-asyncio

18
推荐指数
2
解决办法
1万
查看次数

标签 统计

python ×1

python-asyncio ×1