python如何实现异步调用函数执行

 更新时间:2019年07月08日 09:44:23   作者:迎风而来  
这篇文章主要介绍了python如何实现异步调用函数执行,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

在实现异步调用之前我们先进行什么是同步调用和异步调用

  • 同步:是指完成事务的逻辑,先执行第一个事务,如果阻塞了,会一直等待,直到这个事务完成,再执行第二个事务,顺序执行
  • 异步:是和同步相对的,异步是指在处理调用这个事务的之后,不会等待这个事务的处理结果,直接处理第二个事务去了,通过状态、通知、回调来通知调用者处理结果

分析一下,下面的例子:

定义了一个装饰器 async 和 A 、B 两个function 函数

A 里面sleep 10s , 然后打印 a function 字符串

B 里面直接打印 b function 字符串

我们顺序调用两个功能:

A()

B( )

由于函数A在睡的状态,我们又不希望程序被阻塞在函数A的睡的状态,所以我们采用异步执行,即在函数A睡的状态,让其他的任务执行

from threading import Thread
from time import sleep


def async(f):
  def wrapper(*args, **kwargs):
    thr = Thread(target=f, args=args, kwargs=kwargs)
    thr.start()

  return wrapper


@async
def A():
  sleep(10)
  print("函数A睡了十秒钟。。。。。。")
  print("a function")


def B():
  print("b function")


A()
B()

执行结果:

#b function
#函数A睡了十秒钟。。。。。。
#a function

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 详解Python中正则匹配TAB及空格的小技巧

    详解Python中正则匹配TAB及空格的小技巧

    这篇文章主要介绍了详解Python中正则匹配TAB及空格的小技巧,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • python3中获取文件当前绝对路径的两种方法

    python3中获取文件当前绝对路径的两种方法

    下面小编就为大家分享一篇python3中获取文件当前绝对路径的两种方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • pybind11和numpy进行交互的方法

    pybind11和numpy进行交互的方法

    这篇文章主要介绍了pybind11和numpy进行交互的方法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-07-07
  • Python函数的定义方式与函数参数问题实例分析

    Python函数的定义方式与函数参数问题实例分析

    这篇文章主要介绍了Python函数的定义方式与函数参数问题,结合实例形式详细分析了Python函数定义、函数参数相关原理、操作技巧与注意事项,需要的朋友可以参考下
    2019-12-12
  • 利用Python的PyPDF2库提取pdf中的图片

    利用Python的PyPDF2库提取pdf中的图片

    本篇给大家分享一下通过Python的PyPDF2库提取pdf中的图片方法,文中有详细的代码示例和流程步骤,感兴趣的同学可以阅读一下
    2023-05-05
  • Python数据结构列表

    Python数据结构列表

    这篇文章主要介绍了Python数据结构列表,本文重点内容主要是对列表数据结构的使用,在Python中,序列是一组按顺序排列的值。Python 有 3 种内置的序列类型:字符串、 元组和列表,下面一起进入文章了解更详细内容吧,需要的小伙伴可以参考一下</P><P>
    2021-12-12
  • Python函数基础(定义函数、函数参数、匿名函数)

    Python函数基础(定义函数、函数参数、匿名函数)

    这篇文章介绍了Python函数的基础用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • 使用Python3编写抓取网页和只抓网页图片的脚本

    使用Python3编写抓取网页和只抓网页图片的脚本

    这篇文章主要介绍了使用Python3编写抓取网页和只抓网页图片的脚本,使用到了urllib模块,需要的朋友可以参考下
    2015-08-08
  • 对pandas replace函数的使用方法小结

    对pandas replace函数的使用方法小结

    今天小编就为大家分享一篇对pandas replace函数的使用方法小结,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • python获取豆瓣电影简介代码分享

    python获取豆瓣电影简介代码分享

    这篇文章主要介绍了使用python获取豆瓣电影简介的方法,大家参考使用吧
    2014-01-01

最新评论