Problème
Les informations détaillées sur la trace des fonctions n'apparaissent pas lors de l'utilisation asyncio.ensure_future
dans les coroutines.
Solution
Les futurs créés à partir de ensure_future
doivent être attendus dans la même coroutine dans laquelle ils ont été créés. Par exemple, dans la section Before , await
n'est pas présent avec ensure_future
, ce qui entraînerait des informations manquantes :
Avant:
import asyncio
async def foo(): ensure_future(bar())
async def bar(): await asyncio.sleep(0.5)
Après:
import asyncio
async def foo(): await ensure_future(bar())
async def bar(): await asyncio.sleep(0.5)