当前位置: 技术问答>linux和unix
动态链接库的问题
来源: 互联网 发布时间:2016-08-29
本文导语: 生成了两个动态链接库:1.so、2.so。在两个库中有两个相同的函数A和B,具体调用都是相同的,如下: void B{ ...... } void A{ ...... B(); ..... } 主函数中先打开1.so,调用函数A,执行一系列操作后,关闭1.so...
生成了两个动态链接库:1.so、2.so。在两个库中有两个相同的函数A和B,具体调用都是相同的,如下:
void B{
......
}
void A{
......
B();
.....
}
主函数中先打开1.so,调用函数A,执行一系列操作后,关闭1.so;然后打开2.so,调用函数A,然后就出现问题了,当A调用B时,却执行了1.so的函数B。如何能避免这样的情况出现。
说明:1.调用函数A时确实都在不用的库中
2.改函数名是不现实的,因为我有这样的函数结构很多,1.so中和2.so中大部分函数名都是相同的。
谢谢大家了!!!
void B{
......
}
void A{
......
B();
.....
}
主函数中先打开1.so,调用函数A,执行一系列操作后,关闭1.so;然后打开2.so,调用函数A,然后就出现问题了,当A调用B时,却执行了1.so的函数B。如何能避免这样的情况出现。
说明:1.调用函数A时确实都在不用的库中
2.改函数名是不现实的,因为我有这样的函数结构很多,1.so中和2.so中大部分函数名都是相同的。
谢谢大家了!!!
|
尽量设置成静态函数,static
|
我不大清楚,但说哈俺的感觉,你这样的函数只要是可重入的就没有问题的。比如对一些敏感变量的操作。