python异步任务
Posted xiejunna
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python异步任务相关的知识,希望对你有一定的参考价值。
需求及场景:
在查询进度值接口中,客户端会几秒钟获取一次进度值,但如果,客户端关闭,就不在主动查询进度值了。python脚本在调用启动任务脚本后,开始查询进度值,那么在调用启动脚本后,用异步函数,实现n秒钟查询一次更新中的进度值,进度完成后,更新状态到数据库,以备下次客户端获取某条数据的状态。
异步函数demo实现如下:
# -*- coding:utf-8 -*-
from threading import Thread
# 自定义装饰器
def my_async(fn):
def wrapper(*args, **kwargs):
Thread(target=fn, args=args, kwargs=kwargs).start()
return wrapper
# 自定义装饰器
@my_async
def get_data():
return 'async_data'
def get_name():
return 'zhang_san'
if __name__ == '__main__':
print(get_data())
print(get_name())
print('1')
print('2')
print('3')
print('4')
print('5')
# 执行结果
zhang_san
1
2
3
4
5
async_data
以上是关于python异步任务的主要内容,如果未能解决你的问题,请参考以下文章
我应该在 Fragment 中的啥生命周期状态下执行异步任务?