当前位置:家常菜>百科>科技>正文

python asyncio

人气:107 ℃/2024-05-27 09:50:50

python协程库asyncio的运行方式有哪些?我们一起了解一下吧!

asyncio 是以协程的模式来编写并发的库,使用 async/await 语法。在 IO密集型 的网络编程里,异步IO 协程 省去了开辟新的线程和进程的开销。asyncio 是 Python3.4 版本引入到标准库,python3.5 加入了 async/await 特性。下面我们就来分享一下运行协程的几种方式。

使用 async 声明协程

async def asyncTask():

    # 协程休眠

    await asyncio.sleep(1)

    print(time.strftime('%X'))

运行协程的几种方式:

1、asyncio.run() 函数用来在非协程函数中调用协程

asyncio.run(asyncTask())

2、使用 await 等待一个协程。

await asyncTask()

3、asyncio.create_task() 用函数将协程打包为一个 Task 排入日程准备执行,返回 asyncio.Task 对象。

此函数 在 Python 3.7 中被加入。

task1 = asyncio.create_task(asyncTask1())task2 = asyncio.create_task(asyncTask2())await task1await task2

4、使用 asyncio.gather() 函数来并发多个协程。

tasks = asyncio.gather(asyncTask1(), asyncTask2())tasks2 = asyncio.gather(*[asyncTask1(), asyncTask2()])await tasksawait tasks2

具体示例:

import asyncioimport time# 定义协程任务async def asyncTask1():

    # 协程休眠

    await asyncio.sleep(1)

    print(time.strftime('%X'), 1)async def asyncTask2():

    await asyncio.sleep(2)

    print(time.strftime('%X'), 2)async def main():

    task1 = asyncio.create_task(asyncTask1())

    task2 = asyncio.create_task(asyncTask2())

    tasks = asyncio.gather(asyncTask1(), asyncTask2())

    tasks2 = asyncio.gather(*[asyncTask1(), asyncTask2()])    await tasks    await tasks2    await task1    await task2

print(time.strftime('%X'), "start")

asyncio.run(main())

print(time.strftime('%X'), "end")

关于运行协程的方式,我们就了解到这啦!

  • 珍惜当下珍惜眼前人的优美句子

    1、如果有来生,我们是不是应该过好今生,如果有末日,我们是不是应该珍惜当下。2、你永远不知道,意外和明天哪个先到,所以好好珍惜当下,不该出手时别出手。3、春秋的喧哗,冬夏的温差...

    句子查看全文>>
  • 福耀镀膜玻璃优缺点

    镀膜玻璃可以防晒,隔热,并且可以提高夜间行驶的安全性。缺点是价格比较贵。镀膜玻璃在夜间行驶时会发黄,这样可以改善夜间驾驶的视线,这样可以提高夜间行驶的安全性。福耀是全球第一大汽...

    问答查看全文>>
  • 怎么买绿茶

    市场上的绿茶品质参差不齐,选购绿茶就是要注意一看,二闻,三泡,四品,这四个方面。一看:优质的绿茶叶片匀整,亮绿,条索紧结;劣质的绿茶叶片不整齐,亮度不够,叶片松弛。冲泡后的茶汤...

    茶叶查看全文>>
  • 女儿18岁生日祝福语

    1、因为你的诞生,这一天注定与众不同。我激动的脸都红了,眼睛都直了,腿都软了,发短信时手都不听使唤了,只为对你说一句:18岁生日快乐!2、送你一张贺卡,愿你年年今日嘻唰唰;送你...

    祝福语查看全文>>
  • 2022七夕节朋友圈文案简短

    1、七夕情人节快乐!愿我俩的爱情能比牛郎织女更深,但不要像他们的两地相思!2、你工作我疲惫,你伤心我落泪,你心烦我无味。因此收到短信,一定在笑,轻启朱唇,浅露酒窝;读完短信,一...

    说说查看全文>>
本网站部分内容、图文来自于网络,如有内容侵犯您的合法权益,请及时与我们联系,我们将第一时间安排核实及删除!
CopyRight © 2007-2024 家常菜 All Rights Reserved. 手机版