Python3.11新機能asyncio.TaskGroup()と2022年asyncioの"Hello-ish world"
10/14, 14:40–15:10 (Asia/Tokyo), pyconjp_4
言語: 日本語

2022年10月にリリースされるPython 3.11にて「PEP 654 *Exception Groups and except*」 がAccepted**され、asyncio.TaskGroup()が追加されます。これによりエクセプション、キャンセル処理が強化され、より柔軟にasyncioが進化します。

本トークではこのasyncio.taskgroupによって何ができるようになるのか、asyncioがどう変わるのか、お話ししたいと思います。


詳細

Python3.11でasyncio.TaskGroup()やasyncio timeoutコンテキストマネージャーが追加になり、また3.10でget_event_loop()が非推奨となり、さらにloopオブジェクトが隠蔽され、怖くなくなっていたasyncioがさらに怖くなくなりました。
より簡単に柔軟になったasyncioのPython 3.11での基本的な利用方法(エクセプション、キャンセル処理を中心に)をお話しします。
ASGIフレームワークを利用したWebアプリケーションや非同期I/Oが有用なPythonスクリプトを書く際にasyncioを選択する一助となれば幸いです。

予定稿

  • 導入
  • 自己紹介
  • Python 3.11で追加されたasyncioの新機能(15min)
    • PEP 654 Exception Groups and except
    • asyncio.TaskGroup()
    • asyncio timeoutコンテキストマネージャー
  • 2022年 Python3.11でのasyncio(15min)
    • asyncioの進化の歴史
      • サードパーティでの非同期実装紹介(curio, trio , AnyIO, quattro)
    • 進化によってできること

株式会社日本システム技研所属。
Pythonを中心としたWebシステム開発にフルスタックエンジニアとして従事。PyCon JP、DjangoCongress JPなどにて登壇。コミュニティ活動として、ギークラボ長野の運営に参加。ビールとキャンプが好き。
共著書に「Pythonエンジニア育成推進協会監修 Python実践レシピ(技術評論社)」