6
私の実行ファイルがライブラリをロードするのにdlopen
を呼び出しても、dlclose
を呼び出すことを怠ると、ライブラリはプロセスが終了するまでロードされたままで、OSはそれを強制的にアンロードします。dlopenされたライブラリからdlopen()が呼び出された場合、ロード・リークはありますか?
私はb.so
をロードa.so
をロードする場合は、a.so
にdlclose
を呼び出し、OSは、同様にb.so
をアンロードしますか?
これは、Microsoftと同等の方法であるLoadLibraryEx
を使用して同様のシナリオとどのように比較されますか?
ありがとうございました。 'dl *'のドキュメントでこの情報がどこにあるのか知っていますか?私はhttp://linux.die.net/man/3/dlopenを読んでいたが見つからなかった – Kietz
私は主にLinuxプログラミングではなく、Linux/Unixであるが、正式に文書化する必要はないと思う。すべてのモジュールが行うことができるのは、ライブラリをロードすること自体に責任があります。ライブラリがサードパーティのもので、第三者がいくつかの設定、実行環境などに基づいて第三者が1,2,3、またはモジュールをロードしない場合はどうでしょうか?あなたのアプリケーションは、内部モジュールとは何ですか?もちろん違います。 – PaulMcKenzie
これは間違いなく 'LoadLibrary *'と 'GetModuleHandle *'に当てはまりますか?それらの文書を私に指摘できますか? – Kietz