python loop call soon_python里协程事件循环里怎么样调用非协程函数

展开全部

为了管理协程和I/O的回调函数,asyncio库的事件循e69da5e6ba903231313335323631343130323136353331333363393665环也能基于定时的方式调用普通的函数,使用call_soon()函数,例子如下:import asyncio

import functools

def callback(arg, *, kwarg='default'):

print('callback invoked with {} and {}'.format(arg, kwarg))

async def main(loop):

print('registering callbacks')

loop.call_soon(callback, 1)

wrapped = functools.partial(callback, kwarg='not default')

loop.call_soon(wrapped, 2)

await asyncio.sleep(0.1)

event_loop = asyncio.get_event_loop()

try:

print('entering event loop')

event_loop.run_until_complete(main(event_loop))

finally:

print('closing event loop')

event_loop.close()

结果输出如下:

entering event loop

registering callbacks

callback invoked with 1 and default

callback invoked with 2 and not default

closing event loop

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值