Skip to content

v0.1.0 Async Manager 首次發布 🚀

Choose a tag to compare

@CXPhoenix CXPhoenix released this 29 Jan 14:57
· 2 commits to main since this release

很高興宣布 Async Manager 的第一個版本 v0.1.0 正式發布!這個套件旨在協助開發者輕鬆地將同步函式 (Synchronous Functions) 整合進非同步 (Asynchronous) 應用程式中,並提供完善的並發控制機制。

✨ 主要功能 (Highlights)

  • 無縫整合:透過 @to_async 裝飾器 (Decorator),一行程式碼即可將同步函式轉換為非同步函式 (Awaitable)。
  • 資源安全:內建 CapacityLimiter 支援,精準控制 Thread Pool 的並發數量,避免資源耗盡。
  • 靈活管理:
    • 支援 Context Manager (create_limiter) 自動管理 Limiter 生命週期。
    • 支援全域或隔離的 AsyncManager 實例管理。
    • 提供便捷函式 (regist_limiter, unregist_limiter) 方便與依賴注入系統整合。

📋 變更細節 (Changelog)

新增

  • Async Manager 首次發布。
  • 新增 to_async 裝飾器 (Decorator),可將同步函式 (Synchronous Functions) 轉換為非同步函式 (Asynchronous Functions)。
  • 新增 AsyncManager 類別,負責管理 Capacity Limiter。
  • 支援使用 CapacityLimiter 進行並發控制 (Concurrency Control)。
  • 支援 Context Manager,可透過 create_limiter 自動管理 Limiter 生命週期。
  • 提供 regist_limiter、unregist_limiter、get_limiter 等輔助函式。

📦 安裝指南

使用 uv 或 pip 直接從 GitHub 安裝:

uv add "async-manager @ git+https://github.com/CXPhoenix/async-manager.git@v0.1.0"

或

pip install "git+https://github.com/CXPhoenix/async-manager.git@v0.1.0"

Full Changelog: https://github.com/CXPhoenix/async-manager/commits/v0.1.0