blob: 9bba9a16066569804d17fb05bb2d04504d0655c4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
import asyncio
import time
async def busy_task():
i = 0
while i < 100:
i += 1
await asyncio.sleep(3.0)
return 1
async def main():
tasks = [asyncio.create_task(busy_task()) for i in range(5)]
start_time = time.time()
try:
# this is to prevent waiting in 'select' all day,
# which makes the python intepreter not respond to
# mini-scalene / SCALENE
while True:
if time.time() - start_time > 4.0:
break
# print(asyncio.all_tasks())
await asyncio.sleep(0) # yield
except KeyboardInterrupt:
pass
finally:
print("Done.")
asyncio.run(main())
|