本模块提供了单一线程并发事件处理多任务方式。
定时回调的例子:
import asyncio
def print_and_repeat(loop):
print('Hello World')
loop.call_later(2, print_and_repeat, loop)
loop = asyncio.get_event_loop()
loop.call_soon(print_and_repeat, loop)
loop.run_forever()
输出如下:
Hello World
Hello World
Hello World
Hello World
Hello World
在这个例子里,导入了异步事件处理库asyncio,接着定义函数 print_and_repeat,在这个函数里先打印字符串,在函数结束时调用事件循环loop来准备下一次回调的设置,也就是调用函数call_later()。在主函数里是先调用库asyncio来创建一个事件处理器loop,它是通过函数get_event_loop()返回,接着注册了一个事件call_soon(),最后调用函数run_forever()阻塞整个线程执行,直到退出为止。
蔡军生 QQ:9073204 深圳