我有一个库 (L),它由使用 dlopen 的程序 (P) 动态加载。 L 实现了一个插件接口(interface),因此回调它的父级以获得一些功能。
P内部是一个单例对象,动态创建一个线程池对象A。 我需要从 L 访问 A。
但是,因为单例通过使用静态变量工作,所以当 L 被加载时,它最终会创建它自己的实例,这在某些情况下会很好,但我想要在 P 中创建的实例。有没有办法解决这个问题?
最佳答案
L 中不应该有一个static
A。让P 将A 的地址传递给L,即L.init(&A)
。
关于c++ - 如何从 dlopen 的库 L 访问程序 P 中的静态变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14992118/