在C中,是否可以通过重新编译动态库来将新代码集成到正在运行的进程中?

Joh*_*ann 5 c python

我正在拿起C来加速一些大型python项目.为了向连续运行的python脚本添加新函数,我偶尔会检查一个.py文件并集成它的内容.我想知道是否有一种方法可以在C中进行等效操作.有没有办法让它在运行中获取动态库的内容?

Oli*_*ews 6

是的,您需要使用dlopen访问库而不是在编译时链接,然后dlsym访问其中的函数.要切换到新库,您需要dlclose使用句柄并创建一个新库 - 将其包装在模块中以处理所有这些并不是一项非常困难的任务.