新增async
import asyncio from threading import Thread import time now = lambda: time.time() print('start',now()) def start_loop(loop): asyncio.set_event_loop(loop) loop.run_forever() async def do_some_work(x): print('Waiting {}'.format(x)) await asyncio.sleep(x) print('Done after {}s'.format(x)) print(x,now()) return x async def more_work(x): print('More work {}'.format(x)) # time.sleep(x) await asyncio.sleep(x) print('Finished more work {}'.format(x)) print(x,now()) start = now() new_loop = asyncio.new_event_loop() t = Thread(target=start_loop, args=(new_loop,)) t.start() i=1 while i<2: a=asyncio.run_coroutine_threadsafe(do_some_work(i), new_loop) i+=1 # print('result is:',a._state,a.result())