我有TCP服务器,它使用共享库名称并使用dl
库执行它
由于某种原因(signal handler not called for dlopen or dlclose),我使用dlopen()
与RTLD_NODELETE
,以避免dlclose()
来致电。我的问题是
1.以下情况会发生什么:
- 我第一次打电话给dlopen('myLib.so', RTLD_LAZY | RTLD_NODELETE)
- 我的库已加载并调用foo()
中存在的某个函数myLib.so
- 下次我将更新我的foo()
定义。然后,如果我拨打dlopen('myLib.so', RTLD_LAZY | RTLD_NODELETE)
,我的dlopen
将加载新库或重新使用旧的
2.假设如果一切顺利,那么dlopen('xxxx.so', RTLD_LAZY | RTLD_NODELETE)
如果我使用n
数量的库调用xxxx.so
a.so
可能b.so
,c.so
,则导致内存泄漏, ...
,n.so
,RewriteCond %{HTTP_HOST} !^example\.com$ [NC]
RewriteCond %{HTTP_HOST} !^webmail\.example\.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [L,R=301]
已经检查dlopen/dlsym/dlclose (dlfcn.h) causes memory leak,但我的问题是多个共享对象加载
请忽略缩进。我是新手堆叠流量。请不要给出负面标记