Python 中 `os.chmod` 的异步版本

asyncio version of `os.chmod` in Python

我在 asyncio 事件循环中有一些 Python3 代码 运行。

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

我认为目前还没有任何可用的库提供此功能,至少从我所看到的来看是这样。

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

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

await loop.run_in_executor(None, os.chmod, fname, mode)