我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python Task在协程调用实例讲解

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python Task在协程调用实例讲解

1、说明

Tasks用于并发调度协程,通过asyncio.create_task(协程对象)创建Task对象,使协程能够加入事件循环,等待调度执行。除使用asyncio.create_task()函数外,还可使用低级loop.create_task()或ensure_future()函数。推荐使用手动实例Task对象。

2、使用注意

Python3.7中添加到asyncio.create_task函数。在Python3.7之前,可以使用低级asyncio.ensure_future函数。

3、实例


import asyncio
 
 
async def func():
    print(1)
    await asyncio.sleep(2)
    print(2)
    return "返回值"
 
 
async def main():
    print("main开始")
    # 创建协程,将协程封装到一个Task对象中并立即添加到事件循环的任务列表中,等待事件循环去执行(默认是就绪状态)。
    task1 = asyncio.create_task(func())
    # 创建协程,将协程封装到一个Task对象中并立即添加到事件循环的任务列表中,等待事件循环去执行(默认是就绪状态)。
    task2 = asyncio.create_task(func())
    print("main结束")
    # 当执行某协程遇到IO操作时,会自动化切换执行其他任务。
    # 此处的await是等待相对应的协程全都执行完毕并获取结果
    ret1 = await task1
    ret2 = await task2
    print(ret1, ret2)
    
    
asyncio.run(main())

知识点扩展:

python asyncio 协程调用task步骤


import asyncio

async def compute(x, y):
    print("Compute %s + %s ..." % (x, y))
    await asyncio.sleep(1.0)
    return x + y

async def print_sum(x, y):
    result = await compute(x, y)
    print("%s + %s = %s" % (x, y, result))

loop = asyncio.get_event_loop()
loop.run_until_complete(print_sum(1, 2))
loop.close()

到此这篇关于python Task在协程调用实例讲解的文章就介绍到这了,更多相关python Task如何在协程调用内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python Task在协程调用实例讲解

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python Task在协程调用实例讲解

1、说明 Tasks用于并发调度协程,通过asyncio.create_task(协程对象)创建Task对象,使协程能够加入事件循环,等待调度执行。除使用asyncio.create_task()函数外,还可使用低级loop.create_
2022-06-02

怎么在python协程中调用Task

怎么在python协程中调用Task?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传统语言相比,Pytho
2023-06-14

python中Task封装协程实例

这篇文章主要讲解了“python中Task封装协程实例”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python中Task封装协程实例”吧!说明1、Task是Future的子类,Task是对
2023-06-20

实例讲解Python中函数的调用与定义

调用函数:#!/usr/bin/env python3 # -*- coding: utf-8 -*- # 函数调用 >>> abs(100) 100 >>> abs(-110) 110 >>> abs(12.34) 12.3
2022-06-04

使用HttpClient调用接口的实例讲解

一,编写返回对象public class HttpResult {// 响应的状态码private int code;// 响应的响应体private String body;get/set…}
2023-05-31

python线程及多线程实例讲解

进程和线程一、进程进程是程序的分配资源的最小单元;一个程序可以有多个进程,但只有一个主进程;进程由程序、数据集、控制器三部分组成。二、线程线程是程序最小的执行单元;一个进程可以有多个线程,但是只有一个主线程;线程切换分为两种:一种是I/O切
2023-01-31

python ChainMap管理用法实例讲解

说明 1、ChainMap的主要用例是提供一种有效的方法来管理多个范围或上下文,并处理重复键的访问优先级。 2、当有多个存储重复键的字典访问它们的顺序时,这个功能非常有用。 在ChainMap文档中找到一个经典的例子,它模拟Python如何
2022-06-02

实例讲解Python中sys.argv[]的用法

sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个“外部”很关键,所以那些试图从代码来说明它作用的解释一直没看明白。因为我们从外部取得的参数可以是多个,所以获得的是一个列表(list),也就是说sys.argv其实可以看作是一
2022-06-02

实例讲解Python编程中@property装饰器的用法

取值和赋值class Actress():def __init__(self):self.name = 'TianXin'self.age = 5类Actress中有两个成员变量name和age。在外部对类的成员变量的操作,主要包括取值和赋
2022-06-04

协程在Linux中的高效应用实例

Nginx服务器:Nginx是一个高性能的Web服务器和反向代理服务器,它利用协程来处理大量的并发连接请求。通过使用协程,Nginx可以有效地处理大量的并发连接,提高服务器的性能和响应速度。Redis数据库:Redis是一个高性能的内存数据
协程在Linux中的高效应用实例
2024-08-06

常见的python正则用法实例讲解

下面列出Python正则表达式的几种匹配用法: 此外,关于正则的一切http://deerchao.net/tutorials/regex/regex.htm 1.测试正则表达式是否匹配字符串的全部或部分 regex=ur"" #正则表达
2022-06-04

怎么在Python中使用gevent实现协程

怎么在Python中使用gevent实现协程?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对象
2023-06-14

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录