Python中的asyncio版本的`os.chmod`

Tom*_*tie 7 python chmod python-asyncio

我在asyncio事件循环中运行了一些Python3代码.

我想使用它的功能os.chmod(...),但理想情况下会像这样的非阻塞版本,以便我可以使用await os.chmod(...),并避免进行阻塞系统调用.

我不相信有任何可用的库提供此功能,至少从我能看到的.

我如何os.chmod(...)从头开始实现非阻塞?更好的是,是否存在预先存在的解决方案?

And*_*lov 6

UNIX系统尚未为chmod系统调用实现异步API .因此,您可以做的最好是在线程池中运行它:

await loop.run_in_executor(None, os.chmod, fname, mode)
Run Code Online (Sandbox Code Playgroud)