并发¶
- litestar.concurrency.get_asyncio_executor() ThreadPoolExecutor | None¶
在 asyncio 上下文中获取用于运行同步可调用对象的执行器
- litestar.concurrency.get_trio_capacity_limiter() trio.CapacityLimiter | None¶
在 trio 上下文中运行同步可调用对象时获取所使用的容量限制器。
- litestar.concurrency.set_asyncio_executor(executor: ThreadPoolExecutor | None) None¶
在 asyncio 上下文中设置用于运行同步可调用对象的执行器。
- litestar.concurrency.set_trio_capacity_limiter(limiter: trio.CapacityLimiter | None) None¶
在 trio 上下文中运行同步可调用对象时设置容量限制器。
- async litestar.concurrency.sync_to_thread(fn: ~typing.Callable[[~P], ~litestar.concurrency.T], *args: ~typing.~P, **kwargs: ~typing.~P) T¶
在 worker 线程中异步运行同步可调用对象
fn。 当从 asyncio 调用时,使用asyncio.loop.run_in_executor()运行该可调用对象。默认情况下未指定执行器,因此将使用当前事件循环的执行器。可以使用set_asyncio_executor()设置特定的执行器。这不会影响事件循环的默认执行器。 当从 trio 调用时,使用trio.to_thread.run_sync()运行该可调用对象。默认情况下未指定容量限制器,但可以使用set_trio_capacity_limiter()进行设置。这不会影响 trio 的默认容量限制器。