我有一些使用实现虚拟文件系统的库的 Python 代码。为了使这些虚拟文件系统的驱动程序能够工作一堆 C 函数(如 readdir()、opendir()、fseek()),需要覆盖/替换 - 使用 .so/.cpp 文件中定义的替换。通常这可以通过将 LD_PRELOAD 设置为该 .so 文件来完成。但是,我需要能够在运行时覆盖这些函数,并且理想情况下,一旦使用这些覆盖函数的 Python 函数执行完毕,就可以恢复为非覆盖函数。这可能吗?
问问题
550 次
1 回答
2
我猜你想要ctypes。这是一个讨论:https ://docs.python.org/2/library/ctypes.html
于 2014-11-20T00:44:25.640 回答