動的読み込み
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/07/01 06:34 UTC 版)
動的読み込み (英: dynamic loading) は動的リンクの下位カテゴリであり、ビルド時にリンク(暗黙的リンク、英: implicit linking)されたもの以外のダイナミックリンクライブラリを、実行中のプログラムが明示的にロードすることである。明示的リンク (英: explicit linking) と呼ばれることもある。この場合、ライブラリはプラグインモジュールとして使われるのが一般的で、表計算プログラムのadd-inや特定機能を実現するインタプリタなどが典型的である。 動的ライブラリをサポートしているシステムは、モジュールの動的読み込みAPIもサポートしているのが一般的である。例えばWindowsではLoadLibrary()とGetProcAddress()が用意されていて、Unix系システムではdlopen()とdlsym()が用意されている。いくつかの開発環境ではこの処理を自動化している。逆に、不要になったモジュールを解放(アンロード)するAPI(FreeLibrary()やdlclose())も用意されている。これらのAPIは、特にユーザーによる機能拡張を可能とするプラグインシステムをアプリケーション内に実装することにも役立つ。 .NET Frameworkでは、ライブラリのアセンブリは必要となったタイミングで動的かつ自動的にロードされる遅延読み込みが基本であるが、アセンブリの明示的なアンロードはできない。P/Invokeも同様である。.NET 4以降ではプラグインシステムの実装を容易にするManaged Extensibility Framework(英語版)がサポートされるようになった。
※この「動的読み込み」の解説は、「ライブラリ」の解説の一部です。
「動的読み込み」を含む「ライブラリ」の記事については、「ライブラリ」の概要を参照ください。
- 動的読み込みのページへのリンク