Language

IFastNative インターフェイス

定義

ネイティブ メソッドをマークして、ネイティブ インターフェイス (JNI) 遷移Java高速化します。

[Android.Runtime.Register("dalvik/annotation/optimization/FastNative", "", "Dalvik.Annotation.Optimization.IFastNativeInvoker", ApiSince=34)]
public interface IFastNative : IDisposable, Java.Interop.IJavaPeerable, Java.Lang.Annotation.IAnnotation
[<Android.Runtime.Register("dalvik/annotation/optimization/FastNative", "", "Dalvik.Annotation.Optimization.IFastNativeInvoker", ApiSince=34)>]
type IFastNative = interface
    interface IAnnotation
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
属性
実装

注釈

高速ネイティブ メソッドが実行されている間、ガベージ コレクションはスレッドを中断できず、ブロックされる可能性があります。 重要な I/O を実行する、または長時間保持できるネイティブ ロックを取得する、実行時間の長いメソッドまたはメソッドでは、この注釈を使用しないでください。 この注釈は、非ネイティブ メソッドには影響しません。

この最適化は、Android 14 以降の CTS でテストされたパブリック API です。 互換性を最大限に高める場合は、Android 13 以前で高速ネイティブ メソッドを呼び出さないようにします。 ダイナミックJNIリンクはAndroid 12以降でのみ動作します。Android 8 から Android 11 で使用されるメソッドは、JNI RegisterNativesに明示的に登録する必要があります。 注釈は Android 7 以前では無視されます。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

プロパティ

名前 説明
Handle

基になる Android オブジェクトの JNI 値を取得します。

(継承元 IJavaObject)
JniIdentityHashCode

ラップされたインスタンスの java.lang.System.identityHashCode() の値を返します。

(継承元 IJavaPeerable)
JniManagedPeerState

マネージド ピアの状態。

(継承元 IJavaPeerable)
JniObjectReferenceControlBlock

ネイティブ メソッドをマークして、ネイティブ インターフェイス (JNI) 遷移Java高速化します。

(継承元 IJavaPeerable)
JniPeerMembers

メンバー アクセスと呼び出しのサポート。

(継承元 IJavaPeerable)
PeerReference

ラップされたJava オブジェクト インスタンスのJniObjectReferenceを返します。

(継承元 IJavaPeerable)

メソッド

名前 説明
AnnotationType()

この注釈の注釈インターフェイスを返します。

(継承元 IAnnotation)
Disposed()

インスタンスが破棄されたときに呼び出されます。

(継承元 IJavaPeerable)
DisposeUnlessReferenced()

このインスタンスへの未処理の参照がない場合は、 Dispose()を呼び出します。それ以外の場合は何も実行しません。

(継承元 IJavaPeerable)
Equals(Object)

指定したオブジェクトがこのオブジェクトと論理的に等価な注釈を表す場合は true を返します。

(継承元 IAnnotation)
Finalized()

インスタンスが終了したときに呼び出されます。

(継承元 IJavaPeerable)
GetHashCode()

この注釈のハッシュ コードを返します。

(継承元 IAnnotation)
SetJniIdentityHashCode(Int32)

JniIdentityHashCodeによって返される値を設定します。

(継承元 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

ネイティブ メソッドをマークして、ネイティブ インターフェイス (JNI) 遷移Java高速化します。

(継承元 IJavaPeerable)
SetPeerReference(JniObjectReference)

PeerReferenceによって返される値を設定します。

(継承元 IJavaPeerable)
ToString()

この注釈の文字列形式を返します。

(継承元 IAnnotation)
UnregisterFromRuntime()

ランタイムが将来の Java.Interop.JniRuntime+JniValueManager.PeekValue 呼び出しから返されないように、このインスタンスの登録を解除します。

(継承元 IJavaPeerable)

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

ネイティブ メソッドをマークして、ネイティブ インターフェイス (JNI) 遷移Java高速化します。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象