asyncio —非同期I / O
"こんにちは世界"
import asyncio
async def main():
print('Hello ...')
await asyncio.sleep(1)
print('... World!')
# Python 3.7+
asyncio.run(main())
asyncioは、 async / await 構文を使用して concurrent コードを記述するためのライブラリです。
asyncioは、高性能ネットワークおよびWebサーバー、データベース接続ライブラリ、分散タスクキューなどを提供する複数のPython非同期フレームワークの基盤として使用されます。
asyncioは、多くの場合、IOバウンドおよび高レベルの構造化ネットワークコードに最適です。
asyncioは、次の目的で高レベル APIのセットを提供します。
- Pythonコルーチンを同時に実行し、それらの実行を完全に制御します。
- ネットワークIOおよびIPC を実行します。
- 制御サブプロセス;
- キューを介してタスクを配布します。
- 同期並行コード;
さらに、ライブラリおよびフレームワーク開発者用の低レベル APIがあります。
- イベントループを作成および管理します。これは、
networking
の非同期APIを提供し、subprocesses
を実行し、 OSシグナルを処理します。 - トランスポートを使用して効率的なプロトコルを実装します。
- bridge コールバックベースのライブラリとasync / await構文のコード。
参照