14

ネットワークフレームワークにasyncioを使用しています。

以下のコード (low_levelは低レベル関数、mainblock はプログラム エントリ、user_funcはユーザー定義関数):

import asyncio

loop = asyncio.get_event_loop()
""":type :asyncio.AbstractEventLoop"""


def low_level():
    yield from asyncio.sleep(2)


def user_func():
    yield from low_level()


if __name__ == '__main__':
    co = user_func()
    loop.run_until_complete(co)

(forなど)low_levelではなく通常の関数をラップしたいのですが、イベントループになっています。通常の関数としてどのようにラップできますか?coroutinecompatibilitylow_level

4

1 に答える 1