モジュール java.base
パッケージ java.lang.foreign

インタフェースMemoryAddress

すべてのスーパー・インタフェース:
AddressablePREVIEW

public sealed interface MemoryAddress extends AddressablePREVIEW
MemoryAddressは、JavaプラットフォームのプレビューAPIです。
プレビュー機能が有効な場合のみ、プログラムでMemoryAddressを使用できます。
プレビュー機能は、今後のリリースで削除するか、Javaプラットフォームの永続機能にアップグレードすることができます。
メモリー・アドレスは、メモリー・ロケーションへの参照をモデル化します。 通常、メモリー・アドレスは次のいずれかの方法で取得されます: メモリー・アドレスはrawマシン・ポインタによってバックアップされ、「long値」として表されます。

メモリー・アドレスの参照解除

メモリー・アドレスは、このクラス(たとえば、get(ValueLayout.OfInt, long))で提供されている様々なメソッドを使用して読取りまたは書込みできます。 各間接参照メソッドは、サイズ、整列制約、バイト順序、間接参照演算に関連付けられたJavaタイプおよびオフセットを指定する「値レイアウト」PREVIEWを取ります。 たとえば、「デフォルトのエンディアン」を使用してセグメントからintを読み取るには、次のコードを使用できます:
MemoryAddress address = ...
int value = address.get(ValueLayout.JAVA_INT, 0);
読み取る値がbig-endianエンコーディングを使用してメモリーに格納されている場合、間接参照操作を次のように表すことができます:
MemoryAddress address = ...
int value = address.get(ValueLayout.JAVA_INT.withOrder(BIG_ENDIAN), 0);
このクラスのすべての間接参照メソッドは制限付きです: メモリー・アドレスは一時的および空間的境界を備えていないため、実行時にはメモリー間接参照操作の正確性をチェックする方法がありません。
実装要件:
このインタフェースの実装は不変、スレッド・セーフ、およびvalue-basedです。
導入されたバージョン:
19
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    NULLアドレスをモデリングするメモリー・アドレス・インスタンス。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    addOffset(long offset)
    このアドレスから指定されたオフセットでメモリー・アドレスを返します。
    boolean
    equals(Object that)
    指定されたオブジェクトをこのアドレスと比較し、等価性を維持します。
    get(ValueLayout.OfAddressPREVIEW layout, long offset)
    指定されたレイアウトで、指定されたオフセットでこのアドレスからアドレスを読み取ります。
    boolean
    get(ValueLayout.OfBooleanPREVIEW layout, long offset)
    指定されたレイアウトを使用して、指定されたオフセットでこのアドレスからブール値を読み取ります。
    byte
    get(ValueLayout.OfBytePREVIEW layout, long offset)
    指定されたレイアウトで、指定されたオフセットでこのアドレスからバイトを読み取ります。
    char
    get(ValueLayout.OfCharPREVIEW layout, long offset)
    指定されたレイアウトで、指定されたオフセットでこのアドレスからcharを読み取ります。
    double
    get(ValueLayout.OfDoublePREVIEW layout, long offset)
    指定されたレイアウトで、指定されたオフセットでこのアドレスからdoubleを読み取ります。
    float
    get(ValueLayout.OfFloatPREVIEW layout, long offset)
    指定されたレイアウトを使用して、指定されたオフセットでこのアドレスからフロートを読み取ります。
    int
    get(ValueLayout.OfIntPREVIEW layout, long offset)
    指定されたレイアウトを使用して、指定されたオフセットでこのアドレスからintを読み取ります。
    long
    get(ValueLayout.OfLongPREVIEW layout, long offset)
    指定されたレイアウトを使用して、指定されたオフセットでこのアドレスからlongを読み取ります。
    short
    get(ValueLayout.OfShortPREVIEW layout, long offset)
    指定されたレイアウトで、指定されたオフセットでこのアドレスからshortを読み取ります。
    指定されたレイアウト・サイズでスケールされた、指定された索引でこのアドレスからアドレスを読み取ります。
    char
    指定された索引で、指定されたレイアウト・サイズでスケールされた文字をこのアドレスから読み取ります。
    double
    指定された索引のアドレスから、指定されたレイアウト・サイズで倍精度浮動小数点数を読み取ります。
    float
    指定された索引のこのアドレスからフロートを読み取り、指定されたレイアウト・サイズでスケールします。
    int
    getAtIndex(ValueLayout.OfIntPREVIEW layout, long index)
    指定された索引のこのアドレスから、指定されたレイアウト・サイズでスケールされたintを読み取ります。
    long
    指定された索引で、指定されたレイアウト・サイズでスケールされたこのアドレスからlongを読み取ります。
    short
    指定された索引で、指定されたレイアウト・サイズでスケールされたこのアドレスからshortを読み取ります。
    getUtf8String(long offset)
    指定されたオフセットにあるこのアドレスからUTF-8エンコードされたNULL終了文字列を読み取ります。
    int
    このアドレスのハッシュ・コード値を返します。
    ofLong(long value)
    指定された長い値からメモリー・アドレスを作成します。
    void
    set(ValueLayout.OfAddressPREVIEW layout, long offset, AddressablePREVIEW value)
    指定されたレイアウトを使用して、指定されたオフセットでこのアドレスにアドレスを書き込みます。
    void
    set(ValueLayout.OfBooleanPREVIEW layout, long offset, boolean value)
    指定されたレイアウトを使用して、指定されたオフセットでこのアドレスにブール値を書き込みます。
    void
    set(ValueLayout.OfBytePREVIEW layout, long offset, byte value)
    指定されたレイアウトを使用して、指定されたオフセットでこのアドレスにバイトを書き込みます。
    void
    set(ValueLayout.OfCharPREVIEW layout, long offset, char value)
    指定されたレイアウトを使用して、指定されたオフセットでこのアドレスに文字を書き込みます。
    void
    set(ValueLayout.OfDoublePREVIEW layout, long offset, double value)
    指定されたレイアウトを使用して、指定されたオフセットでこのアドレスにdoubleを書き込みます。
    void
    set(ValueLayout.OfFloatPREVIEW layout, long offset, float value)
    指定されたオフセットを使用して、浮動小数点をこのアドレスに書き込みます。
    void
    set(ValueLayout.OfIntPREVIEW layout, long offset, int value)
    指定されたレイアウトを使用して、指定されたオフセットでこのアドレスにintを書き込みます。
    void
    set(ValueLayout.OfLongPREVIEW layout, long offset, long value)
    指定されたレイアウトを使用して、指定されたオフセットでこのアドレスにlongを書き込みます。
    void
    set(ValueLayout.OfShortPREVIEW layout, long offset, short value)
    指定されたレイアウトを使用して、指定されたオフセットでこのアドレスにshortを書き込みます。
    void
    指定されたレイアウト・サイズでスケールされた、指定された索引でこのアドレスにアドレスを書き込みます。
    void
    setAtIndex(ValueLayout.OfCharPREVIEW layout, long index, char value)
    指定された索引で、指定されたレイアウト・サイズでスケールされた文字をこのアドレスに書き込みます。
    void
    setAtIndex(ValueLayout.OfDoublePREVIEW layout, long index, double value)
    指定された索引で、指定されたレイアウト・サイズでスケールされたdoubleをこのアドレスに書き込みます。
    void
    setAtIndex(ValueLayout.OfFloatPREVIEW layout, long index, float value)
    指定された索引のこのアドレスにフロートを書き込み、指定されたレイアウト・サイズでスケールします。
    void
    setAtIndex(ValueLayout.OfIntPREVIEW layout, long index, int value)
    指定された索引で、指定されたレイアウト・サイズでスケールされたintをこのアドレスに書き込みます。
    void
    setAtIndex(ValueLayout.OfLongPREVIEW layout, long index, long value)
    指定された索引で、指定されたレイアウト・サイズで拡大縮小されたこのアドレスにlongを書き込みます。
    void
    setAtIndex(ValueLayout.OfShortPREVIEW layout, long index, short value)
    指定された索引で、指定されたレイアウト・サイズでスケールされたこのアドレスにshortを書き込みます。
    void
    setUtf8String(long offset, String str)
    指定された文字列を指定されたオフセットでこのアドレスに書き込み、UTF-8エンコーディングを使用してNULLで終了するバイト・シーケンスに変換します。
    long
    このメモリー・アドレスに関連付けられたraw long値を返します。

    インタフェースjava.lang.foreign.AddressablePREVIEWで宣言されたメソッド

    address
  • フィールド詳細

    • NULL

      static final MemoryAddressPREVIEW NULL
      NULLアドレスをモデリングするメモリー・アドレス・インスタンス。
  • メソッドの詳細

    • toRawLongValue

      long toRawLongValue()
      このメモリー・アドレスに関連付けられたraw long値を返します。
      戻り値:
      このメモリー・アドレスに関連付けられたraw long値
    • addOffset

      MemoryAddressPREVIEW addOffset(long offset)
      このアドレスから指定されたオフセットでメモリー・アドレスを返します。
      パラメータ:
      offset - 新しいアドレスの作成に使用する必要がある、このアドレスを基準とした相対位置のオフセット(バイト単位)を指定します。 負かもしれません。
      戻り値:
      現在のものからの指定されたオフセットを持つメモリー・アドレス。
    • getUtf8String

      String getUtf8String(long offset)
      指定されたオフセットにあるこのアドレスからUTF-8エンコードされたNULL終了文字列を読み取ります。

      このメソッドは、不正入力シーケンスやマップ不可文字シーケンスを、この文字セットのデフォルトの置換文字列で置き換えます。 デコード処理をより強力に制御する必要がある場合、CharsetDecoderクラスを使用する必要があります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      戻り値:
      指定された開始アドレス(toRawLongValue() + offset)から(含まない)までの最初の'\0'終了文字(あるものが見つかった場合)まで読み取られたバイトから構築されたJava文字列。
      例外:
      IllegalArgumentException - UTF-8文字列のサイズがプラットフォームでサポートされる最大の文字列より大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • setUtf8String

      void setUtf8String(long offset, String str)
      指定された文字列を指定されたオフセットでこのアドレスに書き込み、UTF-8エンコーディングを使用してNULLで終了するバイト・シーケンスに変換します。

      このメソッドは、不正入力シーケンスやマップ不可文字シーケンスを、この文字セットのデフォルトの置換文字列で置き換えます。 デコード処理をより強力に制御する必要がある場合、CharsetDecoderクラスを使用する必要があります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      str - このアドレスで書き込まれるJava文字列。
      例外:
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • equals

      boolean equals(Object that)
      指定されたオブジェクトをこのアドレスと比較し、等価性を維持します。 指定されたオブジェクトもアドレスの場合のみ、trueを返し、このアドレスと同じメモリー・ロケーションを参照します。
      オーバーライド:
      equals、クラスObject
      パラメータ:
      that - このアドレスと等価性を持たせるために比較するオブジェクト。
      戻り値:
      指定されたオブジェクトがこのアドレスと等しい場合、true
      関連項目:
    • hashCode

      int hashCode()
      このアドレスのハッシュ・コード値を返します。
      オーバーライド:
      hashCode、クラスObject
      戻り値:
      このアドレスのハッシュ・コード値
      関連項目:
    • ofLong

      static MemoryAddressPREVIEW ofLong(long value)
      指定された長い値からメモリー・アドレスを作成します。
      パラメータ:
      value - rawアドレスを表すlong値。
      戻り値:
      指定されたraw long値を持つメモリー・アドレス。
    • get

      byte get(ValueLayout.OfBytePREVIEW layout, long offset)
      指定されたレイアウトで、指定されたオフセットでこのアドレスからバイトを読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      戻り値:
      このアドレスから読み取られたバイト値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • set

      void set(ValueLayout.OfBytePREVIEW layout, long offset, byte value)
      指定されたレイアウトを使用して、指定されたオフセットでこのアドレスにバイトを書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      value - 書き込まれるbyte値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • get

      boolean get(ValueLayout.OfBooleanPREVIEW layout, long offset)
      指定されたレイアウトを使用して、指定されたオフセットでこのアドレスからブール値を読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      戻り値:
      このアドレスから読み取られるブール値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • set

      void set(ValueLayout.OfBooleanPREVIEW layout, long offset, boolean value)
      指定されたレイアウトを使用して、指定されたオフセットでこのアドレスにブール値を書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      value - 書き込まれるブール値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • get

      char get(ValueLayout.OfCharPREVIEW layout, long offset)
      指定されたレイアウトで、指定されたオフセットでこのアドレスからcharを読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      戻り値:
      このアドレスから読み取られるchar値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • set

      void set(ValueLayout.OfCharPREVIEW layout, long offset, char value)
      指定されたレイアウトを使用して、指定されたオフセットでこのアドレスに文字を書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      value - 書き込まれるchar値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • get

      short get(ValueLayout.OfShortPREVIEW layout, long offset)
      指定されたレイアウトで、指定されたオフセットでこのアドレスからshortを読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      戻り値:
      このアドレスから読み取られる短い値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • set

      void set(ValueLayout.OfShortPREVIEW layout, long offset, short value)
      指定されたレイアウトを使用して、指定されたオフセットでこのアドレスにshortを書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      value - 書き込まれるshort値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • get

      int get(ValueLayout.OfIntPREVIEW layout, long offset)
      指定されたレイアウトを使用して、指定されたオフセットでこのアドレスからintを読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      戻り値:
      このアドレスから読み取られるint値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • set

      void set(ValueLayout.OfIntPREVIEW layout, long offset, int value)
      指定されたレイアウトを使用して、指定されたオフセットでこのアドレスにintを書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      value - 書き込まれるint値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • get

      float get(ValueLayout.OfFloatPREVIEW layout, long offset)
      指定されたレイアウトを使用して、指定されたオフセットでこのアドレスからフロートを読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      戻り値:
      このアドレスから読み取られる浮動小数点値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • set

      void set(ValueLayout.OfFloatPREVIEW layout, long offset, float value)
      指定されたオフセットを使用して、浮動小数点をこのアドレスに書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      value - 書き込まれるfloat値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • get

      long get(ValueLayout.OfLongPREVIEW layout, long offset)
      指定されたレイアウトを使用して、指定されたオフセットでこのアドレスからlongを読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      戻り値:
      このアドレスから読み取られる長い値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • set

      void set(ValueLayout.OfLongPREVIEW layout, long offset, long value)
      指定されたレイアウトを使用して、指定されたオフセットでこのアドレスにlongを書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      value - 書き込まれるlong値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • get

      double get(ValueLayout.OfDoublePREVIEW layout, long offset)
      指定されたレイアウトで、指定されたオフセットでこのアドレスからdoubleを読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      戻り値:
      このアドレスから読み取られる二重値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • set

      void set(ValueLayout.OfDoublePREVIEW layout, long offset, double value)
      指定されたレイアウトを使用して、指定されたオフセットでこのアドレスにdoubleを書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      value - 書き込まれるdouble値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • get

      指定されたレイアウトで、指定されたオフセットでこのアドレスからアドレスを読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      戻り値:
      このアドレスから読み取られたアドレス値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • set

      void set(ValueLayout.OfAddressPREVIEW layout, long offset, AddressablePREVIEW value)
      指定されたレイアウトを使用して、指定されたオフセットでこのアドレスにアドレスを書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      offset - オフセット(バイト): (このアドレスに対する相対)。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + offsetとして表すことができます。
      value - 書き込まれるアドレス値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • getAtIndex

      char getAtIndex(ValueLayout.OfCharPREVIEW layout, long index)
      指定された索引で、指定されたレイアウト・サイズでスケールされた文字をこのアドレスから読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      index - バイト(このアドレスに対する相対)の索引。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + (index * layout.byteSize())として表すことができます。
      戻り値:
      このアドレスから読み取られるchar値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合、またはレイアウト配置がそのサイズより大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • setAtIndex

      void setAtIndex(ValueLayout.OfCharPREVIEW layout, long index, char value)
      指定された索引で、指定されたレイアウト・サイズでスケールされた文字をこのアドレスに書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      index - バイト(このアドレスに対する相対)の索引。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + (index * layout.byteSize())として表すことができます。
      value - 書き込まれるchar値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合、またはレイアウト配置がそのサイズより大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • getAtIndex

      short getAtIndex(ValueLayout.OfShortPREVIEW layout, long index)
      指定された索引で、指定されたレイアウト・サイズでスケールされたこのアドレスからshortを読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      index - バイト(このアドレスに対する相対)の索引。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + (index * layout.byteSize())として表すことができます。
      戻り値:
      このアドレスから読み取られる短い値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合、またはレイアウト配置がそのサイズより大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • setAtIndex

      void setAtIndex(ValueLayout.OfShortPREVIEW layout, long index, short value)
      指定された索引で、指定されたレイアウト・サイズでスケールされたこのアドレスにshortを書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      index - バイト(このアドレスに対する相対)の索引。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + (index * layout.byteSize())として表すことができます。
      value - 書き込まれるshort値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合、またはレイアウト配置がそのサイズより大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • getAtIndex

      int getAtIndex(ValueLayout.OfIntPREVIEW layout, long index)
      指定された索引のこのアドレスから、指定されたレイアウト・サイズでスケールされたintを読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      index - バイト(このアドレスに対する相対)の索引。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + (index * layout.byteSize())として表すことができます。
      戻り値:
      このアドレスから読み取られるint値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合、またはレイアウト配置がそのサイズより大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • setAtIndex

      void setAtIndex(ValueLayout.OfIntPREVIEW layout, long index, int value)
      指定された索引で、指定されたレイアウト・サイズでスケールされたintをこのアドレスに書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      index - バイト(このアドレスに対する相対)の索引。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + (index * layout.byteSize())として表すことができます。
      value - 書き込まれるint値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合、またはレイアウト配置がそのサイズより大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • getAtIndex

      float getAtIndex(ValueLayout.OfFloatPREVIEW layout, long index)
      指定された索引のこのアドレスからフロートを読み取り、指定されたレイアウト・サイズでスケールします。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      index - バイト(このアドレスに対する相対)の索引。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + (index * layout.byteSize())として表すことができます。
      戻り値:
      このアドレスから読み取られる浮動小数点値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合、またはレイアウト配置がそのサイズより大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • setAtIndex

      void setAtIndex(ValueLayout.OfFloatPREVIEW layout, long index, float value)
      指定された索引のこのアドレスにフロートを書き込み、指定されたレイアウト・サイズでスケールします。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      index - バイト(このアドレスに対する相対)の索引。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + (index * layout.byteSize())として表すことができます。
      value - 書き込まれるfloat値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合、またはレイアウト配置がそのサイズより大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • getAtIndex

      long getAtIndex(ValueLayout.OfLongPREVIEW layout, long index)
      指定された索引で、指定されたレイアウト・サイズでスケールされたこのアドレスからlongを読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      index - バイト(このアドレスに対する相対)の索引。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + (index * layout.byteSize())として表すことができます。
      戻り値:
      このアドレスから読み取られる長い値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合、またはレイアウト配置がそのサイズより大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • setAtIndex

      void setAtIndex(ValueLayout.OfLongPREVIEW layout, long index, long value)
      指定された索引で、指定されたレイアウト・サイズで拡大縮小されたこのアドレスにlongを書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      index - バイト(このアドレスに対する相対)の索引。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + (index * layout.byteSize())として表すことができます。
      value - 書き込まれるlong値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合、またはレイアウト配置がそのサイズより大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • getAtIndex

      double getAtIndex(ValueLayout.OfDoublePREVIEW layout, long index)
      指定された索引のアドレスから、指定されたレイアウト・サイズで倍精度浮動小数点数を読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      index - バイト(このアドレスに対する相対)の索引。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + (index * layout.byteSize())として表すことができます。
      戻り値:
      このアドレスから読み取られる二重値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合、またはレイアウト配置がそのサイズより大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • setAtIndex

      void setAtIndex(ValueLayout.OfDoublePREVIEW layout, long index, double value)
      指定された索引で、指定されたレイアウト・サイズでスケールされたdoubleをこのアドレスに書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      index - バイト(このアドレスに対する相対)の索引。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + (index * layout.byteSize())として表すことができます。
      value - 書き込まれるdouble値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合、またはレイアウト配置がそのサイズより大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • getAtIndex

      MemoryAddressPREVIEW getAtIndex(ValueLayout.OfAddressPREVIEW layout, long index)
      指定されたレイアウト・サイズでスケールされた、指定された索引でこのアドレスからアドレスを読み取ります。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 読み取るメモリー・リージョンのレイアウト。
      index - バイト(このアドレスに対する相対)の索引。 負かもしれません。 この読取り演算の最終アドレスは、toRawLongValue() + (index * layout.byteSize())として表すことができます。
      戻り値:
      このアドレスから読み取られたアドレス値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合、またはレイアウト配置がそのサイズより大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。
    • setAtIndex

      void setAtIndex(ValueLayout.OfAddressPREVIEW layout, long index, AddressablePREVIEW value)
      指定されたレイアウト・サイズでスケールされた、指定された索引でこのアドレスにアドレスを書き込みます。

      このメソッドは制限付きです。 制限されたメソッドは安全ではなく、誤って使用するとJVMがクラッシュしたり、悪化したりするとメモリーが破損する可能性があります。 したがって、クライアントは制限付きメソッドに応じて屈折し、可能な場合は安全でサポートされている機能を使用する必要があります。

      パラメータ:
      layout - 書き込まれるメモリー・リージョンのレイアウト。
      index - バイト(このアドレスに対する相対)の索引。 負かもしれません。 この書込み演算の最終アドレスは、toRawLongValue() + (index * layout.byteSize())として表すことができます。
      value - 書き込まれるアドレス値。
      例外:
      IllegalArgumentException - 指定されたレイアウトで間接参照操作が「線形拘束と互換性がありません」の場合、またはレイアウト配置がそのサイズより大きい場合。
      IllegalCallerException - このメソッドへのアクセスがモジュールMから発生し、コマンドライン・オプション--enable-native-accessが指定されているが、モジュール名M、またはMが無名モジュールの場合はALL-UNNAMEDが指定されていない場合。