インタフェースjdk.incubator.foreign.ResourceScopeの
使用

ResourceScopeを使用するパッケージ
パッケージ
説明
Javaから直接、低レベルで効率的な外部メモリー/ファンクション・アクセスをサポートするクラス。
  • jdk.incubator.foreignでのResourceScopeの使用

    ResourceScopeを返すjdk.incubator.foreignのメソッド
    修飾子と型
    メソッド
    説明
    ResourceScope.globalScope()
    ResourceScope.newConfinedScope()
    新しい限定スコープを作成します。
    ResourceScope.newConfinedScope(Cleaner cleaner)
    提供されたクリーナ・インスタンスによって管理される、新しい限定されたスコープを作成します。
    ResourceScope.newImplicitScope()
    プライベートCleanerインスタンスによって管理される新しい共有スコープを作成します。
    ResourceScope.newSharedScope()
    新しい共有スコープを作成します。
    ResourceScope.newSharedScope(Cleaner cleaner)
    提供されたクリーナ・インスタンスによって管理される新しい共有スコープを作成します。
    MemorySegment.scope()
    このメモリー・セグメントに関連付けられたリソース・スコープを返します。
    NativeSymbol.scope()
    このシンボルに関連付けられたリソース・スコープを返します。
    VaList.scope()
    この変数引数リストに関連付けられたリソース・スコープを返します。
    ResourceScopeのパラメータを持つjdk.incubator.foreignのメソッド
    修飾子と型
    メソッド
    説明
    MemorySegment.allocateNative(long bytesSize, long alignmentBytes, ResourceScope scope)
    指定されたサイズ(バイト単位)、整列制約(バイト単位)およびリソース・スコープのオフ・ヒープ・メモリーの新しい割当て済ブロックをモデル化する新しいネイティブ・メモリー・セグメントを作成します。
    MemorySegment.allocateNative(long bytesSize, ResourceScope scope)
    指定されたサイズ(バイト単位)およびリソース・スコープのオフ・ヒープ・メモリーの新しい割当て済ブロックをモデル化する新しいネイティブ・メモリー・セグメントを作成します。
    MemorySegment.allocateNative(MemoryLayout layout, ResourceScope scope)
    指定されたレイアウトおよびリソース・スコープで、新しく割り当てられたオフ・ヒープ・メモリーのブロックをモデル化する新しいネイティブ・メモリー・セグメントを作成します。
    void
    ResourceScope.keepAlive(ResourceScope target)
    このスコープとターゲット・スコープの間に一時的な依存関係を作成します。
    static VaList
    VaList.make(Consumer<VaList.Builder> actions, ResourceScope scope)
    特定のリソース・スコープを使用して、ビルダー(VaList.Builderを参照してください)を使用して新しい変数引数リストを構成します。
    MemorySegment.mapFile(Path path, long bytesOffset, long bytesSize, FileChannel.MapMode mapMode, ResourceScope scope)
    指定されたパスからファイルのメモリー・マップのリージョンをモデル化する、新しいマップ済メモリー・セグメントを作成します。
    SegmentAllocator.nativeAllocator(ResourceScope scope)
    指定されたスコープに関連付けられたネイティブ・ロケータを返します。
    SegmentAllocator.newNativeArena(long arenaSize, long blockSize, ResourceScope scope)
    指定されたスコープに関連付けられたネイティブ・アリーナ・ベースのロケータを、指定されたアリーナ・サイズおよびブロック・サイズで返します。
    SegmentAllocator.newNativeArena(long arenaSize, ResourceScope scope)
    指定された範囲に関連付けられた指定したアリーナ・サイズにブロック・サイズが設定されたネイティブのバインドされていないアリーナ・ベースのロケータを、指定されたアリーナ・サイズで返します。
    SegmentAllocator.newNativeArena(ResourceScope scope)
    指定されたスコープに関連付けられた事前定義済のブロック・サイズおよび最大アリーナ・サイズを持つ、ネイティブのバインドされていないアリーナ・ベースのロケータを返します。
    MemorySegment.ofAddress(MemoryAddress address, long bytesSize, ResourceScope scope)
    指定されたサイズとリソース・スコープで、ベース・アドレスが指定されたアドレスを持つ新しいネイティブ・メモリー・セグメントを作成します。
    NativeSymbol.ofAddress(String name, MemoryAddress address, ResourceScope scope)
    指定された名前、アドレス、およびスコープから新しいシンボルを作成します。
    static VaList
    VaList.ofAddress(MemoryAddress address, ResourceScope scope)
    指定されたリソース・スコープで、既存の変数引数リストを指すメモリー・アドレスから新しい変数引数リストを構成します。
    CLinker.upcallStub(MethodHandle target, FunctionDescriptor function, ResourceScope scope)
    指定されたスコープを持つネイティブ・スタブを、他の外部関数(関数ポインタとして)に渡すことができます。このようなファンクション・ポインタをネイティブ・コードからコールすると、指定されたメソッド・ハンドルが実行されます。