# coding=utf-8
import asyncio
import functools
def callback(fu, n):
print("{}: future donw:{}".format(n, fu.result()))
async def regCallback(allDone):
print("reg callback")
allDone.add_done_callback(functools.partial(callback, n=18))
allDone.add_done_callback(functools.partial(callback, n=19))
async def deal(allDone):
await regCallback(allDone)
print("jieguo result")
allDone.set_result("this result")
def test(name, age, work):
print("name={}, age={}, work={}".format(name, age, work))
if __name__ == "__main__":
call = functools.partial(test, age=8443)
call("you ", work="wo")
call2 = functools.partial(test,work="call2 work",age=73)
call2("my name is call2")
# loop = asyncio.get_event_loop()
# try:
# allDone = asyncio.Future()
# par = deal(allDone)
# loop.run_until_complete(par)
# finally:
# loop.close()
结果:
name=you , age=8443, work=wo
name=my name is call2, age=73, work=call2 work