我已經通過其他問題了SO上沒有運氣例如:
C++: dlclose doesn't unload the shared librarydlclose不卸載海合會嵌套共享庫,Linux的
我有兩個共享對象(可惜我不能暴露代碼中遇到)。
可以說
liba.so
和libb.so
liba.so
隱含鏈接libb.so
。
並且申請明確鏈接liba.so
使用dlopen()
和RTLD_LAZY
標誌。
一切工作正常,但dlclose()
不卸載liba.so
,雖然它成功返回。 lsof
命令顯示已加載的liba.so
和libb.so
。
由於上述問題的答案建議,dlclose()
只減少參考計數。但由於沒有別的使用這些庫,我希望dlclose()
實際上卸載它。
我已經嘗試了這兩個如此與不同的應用程序相同的問題。所以我想這個問題是在圖書館內。
有人可以提出有關可能的原因的建議。