python怎么实现异步执行函数,分析一下下面的例子:
定义了一个装饰器 async 和 A 、B 两个function
A 里面sleep 10s , 然后打印 a function 字符串
B 里面直接打印 b function 字符串
我们顺序调用两个功能:
A()
B( )
实际结果:
b function
10s…
a function
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
#coding:utf-8 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 function" def B(): print "b function" A() B() |