What Bret said, here (perhaps) more concise: async def main(): f1 = ensure_future(say("two", 2)) f2 = ensure_future(say("one", 1)) # at this point both are running await f1 await f2
Note that current event loop is automatic since Python 3.6; Futures are higher level abstraction, but I think it's better to start with futures :) On Mon, 27 Aug 2018 at 5:47 PM, saurabh singh <saurabh3...@gmail.com> wrote: > my question is 1st one is concurrent but 2nd one is not, how and please > correct me, what i miss and what should i know more > thank you > > import asyncio > > # 1st code > async def say(what, when): > await asyncio.sleep(when) > print(what) > > loop = asyncio.get_event_loop() > > loop.create_task(say('first hello', 2)) > loop.create_task(say('second hello', 1)) > > loop.run_forever() > loop.close() > > ''' > result > >>> second hello > >>> first hello > ''' > > # 2nd code > async def say(what, when): > await asyncio.sleep(when) > print(what) > > async def main(loop): > yield from loop.create_task(say('first hello', 2)) > yield from loop.create_task(say('second hello', 1)) > print('close') > > loop = asyncio.get_event_loop() > loop.run_until_complete(main(loop)) > loop.close() > > ''' > result > >>> first hello > >>> second hello > ''' > > _______________________________________________ > Async-sig mailing list > Async-sig@python.org > https://mail.python.org/mailman/listinfo/async-sig > Code of Conduct: https://www.python.org/psf/codeofconduct/ >
_______________________________________________ Async-sig mailing list Async-sig@python.org https://mail.python.org/mailman/listinfo/async-sig Code of Conduct: https://www.python.org/psf/codeofconduct/