gpt4 book ai didi

python - 检测当前异步库

转载 作者:太空狗 更新时间:2023-10-30 01:10:47 28 4
gpt4 key购买 nike

我正在编写一些异步库,并决定同时支持 asynciotrio 并发库来运行它。无论选择哪个库,我都有一些代码试图变得聪明并做正确的事情。

我如何检测其中的哪一个用于运行我的代码?可以两者兼而有之吗?

最佳答案

您需要 sniffio 库,它是专门为解决这个问题而创建的:https://github.com/python-trio/sniffio

这是文档中的示例:

from sniffio import current_async_library
import trio
import asyncio

async def print_library():
library = current_async_library()
print("This is:", library)

# Prints "This is trio"
trio.run(print_library)

# Prints "This is asyncio"
asyncio.run(print_library())

它目前支持 trio、asyncio、curio,并与 trio-asyncio 集成,因此如果您有一个混合程序使用 trio-asyncio 在 trio 和 asyncio 模式之间来回切换,它会为每个返回正确的值模式。而且它也可以扩展以支持新的库——请参阅文档。

关于python - 检测当前异步库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57762715/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com