Commit d5adb636 authored by Berker Peksag's avatar Berker Peksag

Issue #29407: Remove redundant ensure_future() calls in factorial example

parent 137b5a28
...@@ -472,21 +472,20 @@ Example executing 3 tasks (A, B, C) in parallel:: ...@@ -472,21 +472,20 @@ Example executing 3 tasks (A, B, C) in parallel::
import asyncio import asyncio
@asyncio.coroutine async def factorial(name, number):
def factorial(name, number):
f = 1 f = 1
for i in range(2, number+1): for i in range(2, number+1):
print("Task %s: Compute factorial(%s)..." % (name, i)) print("Task %s: Compute factorial(%s)..." % (name, i))
yield from asyncio.sleep(1) await asyncio.sleep(1)
f *= i f *= i
print("Task %s: factorial(%s) = %s" % (name, number, f)) print("Task %s: factorial(%s) = %s" % (name, number, f))
loop = asyncio.get_event_loop() loop = asyncio.get_event_loop()
tasks = [ loop.run_until_complete(asyncio.gather(
asyncio.ensure_future(factorial("A", 2)), factorial("A", 2),
asyncio.ensure_future(factorial("B", 3)), factorial("B", 3),
asyncio.ensure_future(factorial("C", 4))] factorial("C", 4),
loop.run_until_complete(asyncio.gather(*tasks)) ))
loop.close() loop.close()
Output:: Output::
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment