- 関数型インタフェース:
- これは関数型インタフェースなので、ラムダ式またはメソッド参照の代入先として使用できます。
@FunctionalInterface public interface SymbolLookup
シンボル・ルックアップ。 名前でシンボル・アドレスを検索するためのルックアップ操作を公開します。
lookup(String)
を参照してください。 シンボル・ルックアップを使用すると、ロードされたライブラリ内のシンボルをルックアップできます。 クライアントは「ローダー・ルックアップ」を取得でき、これを使用して、現在のクラス・ローダー(例: System.load(String)
またはSystem.loadLibrary(String)
の使用)によってロードされたライブラリ内のシンボルをルックアップできます。 または、クライアントは「プラットフォーム依存のルックアップ」を入手して、標準のCライブラリ内のシンボルを検索できます。
特に指定がないかぎり、null
引数、またはこのクラスのメソッドに1つ以上のnull
要素を含む配列引数を渡すと、NullPointerException
がスローされます。
-
メソッドのサマリー
修飾子と型メソッド説明static SymbolLookup
呼び出し元クラス・ローダー (つまり、System.loadLibrary(java.lang.String)
またはSystem.load(java.lang.String)
を使用してロードされたライブラリです)に関連付けられたネイティブ・ライブラリのシンボルの検索に適したシンボル・ルックアップを取得します。このルックアップで、指定された名前のシンボルをルックアップします。
-
メソッドの詳細
-
lookup
Optional<MemoryAddress> lookup(String name) このルックアップで、指定された名前のシンボルをルックアップします。- パラメータ:
name
- シンボル名。- 戻り値:
- 記号(もしあれば)に関連付けられたメモリー・アドレス。
-
loaderLookup
static SymbolLookup loaderLookup()呼び出し元クラス・ローダー (つまり、System.loadLibrary(java.lang.String)
またはSystem.load(java.lang.String)
を使用してロードされたライブラリです)に関連付けられたネイティブ・ライブラリのシンボルの検索に適したシンボル・ルックアップを取得します。このメソッドは「制限付き」です。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。
- 戻り値:
- 呼び出し元クラス・ローダーによってロードされたライブラリのシンボルを検索するのに適したシンボル・ルックアップ。
- 例外:
IllegalCallerException
- このメソッドへのアクセスがモジュールM
から発生し、コマンドライン・オプション--enable-native-access
がない場合、またはモジュール名M
が名前なしモジュールの場合はALL-UNNAMED
は説明しません。
-