假设我有这样的课程:
class MyClass:
def __init__(self):
run_some_long_time_function()
如何在python 3.4.1中使用asyncio并行创建此类的多个实例?
答案 0 :(得分:7)
asyncio事件循环是单线程的,因此事件循环上运行的任何内容都不会并行运行。然而,您可以生成一个线程并等待它完成。默认执行程序应该为您创建一个线程:
loop = asyncio.get_event_loop()
asyncio.async(loop.run_in_executor(None, lambda: MyClass()))
asyncio.async(loop.run_in_executor(None, lambda: MyClass()))