Как мы вызываем нормальную функцию, где ожидается сопрограмма?

Рассмотрим сопрограмму, которая вызывает другую сопрограмму:

async def foo(bar):
     result = await bar()
     return result

Это работает нормально, еслиbar это сопрограмма. Что мне нужно сделать (т.е. с чем мне нужно обернуть звонокbar) так что этот код делает правильно, еслиbar это нормальная функция?

Вполне возможно определить сопрограмму сasync def даже если он никогда не делает ничего асинхронного (т.е. никогда не используетawait). Однако возникает вопрос, как обернуть / изменить / вызвать обычную функциюbar внутри кода дляfoo такой, чтоbar можно ждать.

Ответы на вопрос(1)

Ваш ответ на вопрос