# -*- coding: utf-8 -*-
# @Time : 2020/10/12 12:03
# @Author : Wanghairui
import asyncio
import time
async def main():
# 控制并发数 20
sem = asyncio.Semaphore(20)
tasks = [asyncio.create_task(print_something("c"+str(i), sem)) for i in range(60)]
start = time.perf_counter()
await asyncio.gather(*tasks)
print("运行结束")
res = [t.result() for t in tasks]
print(res)
elapsed = (time.perf_counter() - start)
print(elapsed)
async def print_something(thing, sem):
async with sem:
print(thing)
await asyncio.sleep(3)
return "A"
if __name__ == "__main__":
asyncio.run(main())