Python asyncio add_done_callback mit async defPython

Python-Programme
Guest
 Python asyncio add_done_callback mit async def

Post by Guest »

Ich habe zwei Funktionen: Die erste, def_a, ist eine asynchrone Funktion und die zweite ist def_b, eine reguläre Funktion, die mit dem Ergebnis von def_a als a aufgerufen wird Rückruf mit der Funktion add_done_callback.

Mein Code sieht so aus:

Code: Select all

import asyncio

def def_b(result):
next_number = result.result()
# some work on the next_number
print(next_number + 1)

async def def_a(number):
await some_async_work(number)
return number + 1

loop = asyncio.get_event_loop()
task = asyncio.ensure_future(def_a(1))
task.add_done_callback(def_b)
response = loop.run_until_complete(task)
loop.close()
Und es funktioniert perfekt.

Das Problem begann, als auch die zweite Funktion, def_b, wurde asynchron. Jetzt sieht es so aus:

Code: Select all

async def def_b(result):
next_number = result.result()
# some asynchronous work on the next_number
print(next_number + 1)
Aber jetzt kann ich es nicht für die Funktion add_done_callback bereitstellen, da es keine reguläre Funktion ist.

Meine Frage ist: Ist es möglich und wie kann ich def_b für die Funktion add_done_callback bereitstellen, wenn def_b asynchron ist?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post