Linux我用dlopen动态加载一个动态库,之后取出函数地址,执行这个函数,函数执行成功以后,用dlclose卸载这个动态库,但是,这个时候就会偶尔产生core文件,就是dlclose产生的。不明所以,想问下dlclose在什么情况下会产生core?
#0 0x41795d0e in __do_global_dtors_aux () from /home/oms/work/txlib/flw_sp1000.so
#1 0x41796caa in _fini () from /home/oms/work/txlib/flw_sp1000.so
#2 0x4210f063 in _dl_close () from /lib/tls/libc.so.6
#3 0x40a08fdc in dlclose_doit () from /lib/libdl.so.2
#4 0x4000c266 in _dl_catch_error_internal () from /lib/ld-linux.so.2
#5 0x40a09316 in _dlerror_run () from /lib/libdl.so.2
#6 0x40a08fa2 in dlclose () from /lib/libdl.so.2
#7 0x4176bcdd in com_do () at flw_com_do.c:62
#8 0x40a53463 in nDoFbbmWork (iStartIndex=0) at fbbm_comm.c:2699
#9 0x40a4c7a5 in nBbmWork (iStartLine=0) at fbbm_comm.c:77
#10 0x40a48e9a in iRunFlowWork (pstItem=0xbfffdf00) at nbbm.c:1171
#11 0x40a47af9 in iChildWork (iCliFd=11, svr_fd=8) at nbbm.c:664
#12 0x40a4732c in SW_SvcEntry (argc=4, argv=0xbfffeb54) at nbbm.c:360
#13 0x08048f87 in main (argc=4, argv=0xbfffeb54) at db_ora.pc:124
#14 0x42015574 in __libc_start_main () from /lib/tls/libc.so.6
这个是gdb下看到的
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。