SyncFence クラス

定義

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

[Android.Runtime.Register("android/hardware/SyncFence", ApiSince=33, DoNotGenerateAcw=true)]
public sealed class SyncFence : Java.Lang.Object, Android.OS.IParcelable, IDisposable, Java.Interop.IJavaPeerable, Java.Lang.IAutoCloseable
[<Android.Runtime.Register("android/hardware/SyncFence", ApiSince=33, DoNotGenerateAcw=true)>]
type SyncFence = class
    inherit Object
    interface IParcelable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IAutoCloseable
継承
SyncFence
属性
実装

注釈

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。 最初は符号なし状態で開始され、シグナル状態またはエラー状態に 1 回限り遷移します。 SyncFences は、デバイスへのタスクの送信に応じて、さまざまなデバイス API によって作成されます。 ユーザー空間で作成したり通知したりすることはできません。 その結果、SyncFence は常に前進します。

SyncFence は一般的に 2 種類の 1 つです。 "プレゼンテーション フェンス" は、バッファーへの書き込みが完了したときの SyncFence を指します。 次に、バッファーからの読み取りが完了した時点を参照します。

たとえば、フレームバッファーに対する GPU レンダリングでは、EGLSync や VkFence などの同期フェンスが生成され、レンダリングが完了したときに通知されます。 フェンスが信号を発したら、フレームバッファーのバッキング ストレージを、ディスプレイやメディア エンコードなど、安全に読み取ることができます。 これは"プレゼンテーション フェンス" と呼ばれます。

同様に、使用している android.media.ImageWriter 場合は android.media.Image 、返される ImageWriter#dequeueInputImage() セットが既に設定されている Image#getFence() fence 可能性があります。 これは"リリース フェンス" または "acqurie fence" と呼ばれ、ライターが基になるバッファーに書き込む前に待機する必要があるフェンスを示します。 ImageWriter の場合、これは例えば Image#getPlanes() 呼び出されたときに自動的に行われますが、使用 Image#getHardwareBuffer() する場合は、バッファーに書き込む前にリリース フェンスが通知されたことを確認する呼び出し元の責任です。

の Java ドキュメントandroid.hardware.SyncFence

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。

フィールド

SignalTimeInvalid

無効なシグナル時間。

SignalTimePending

保留中のシグナル時間。

プロパティ

Class

この Objectランタイム クラスを返します。

(継承元 Object)
Creator

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

Handle

基になる Android インスタンスへのハンドル。

(継承元 Object)
IsValid

SyncFile オブジェクトが有効かどうかを確認します。

JniIdentityHashCode

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

(継承元 Object)
JniPeerMembers

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

PeerReference

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

(継承元 Object)
SignalTime

フェンスがCLOCK_MONOTONIC時間領域で通知した時間をナノ秒単位で返します。

ThresholdClass

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

(継承元 Object)
ThresholdType

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

(継承元 Object)

メソッド

Await(Duration)

SyncFence がタイムアウト期間まで通知されるまで待機します。

AwaitForever()

SyncFence が通知されるまで、永久に待機します。

Clone()

このオブジェクトのコピーを作成して返します。

(継承元 Object)
Close()

SyncFence を閉じます。

DescribeContents()

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

Dispose()

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

(継承元 Object)
Dispose(Boolean)

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

(継承元 Object)
Equals(Object)

他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。

(継承元 Object)
GetHashCode()

オブジェクトのハッシュ コード値を返します。

(継承元 Object)
JavaFinalize()

オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。

(継承元 Object)
Notify()

このオブジェクトのモニターで待機している 1 つのスレッドを起動します。

(継承元 Object)
NotifyAll()

このオブジェクトのモニターで待機しているすべてのスレッドを起動します。

(継承元 Object)
SetHandle(IntPtr, JniHandleOwnership)

Handle プロパティを設定します。

(継承元 Object)
ToArray<T>()

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

(継承元 Object)
ToString()

オブジェクトの文字列表現を返します。

(継承元 Object)
UnregisterFromRuntime()

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

(継承元 Object)
Wait()

現在のスレッドが目覚めるまで待機させます。通常<は、通知<>/em> または <em>割り込み/em> を受け<取ります。

(継承元 Object)
Wait(Int64, Int32)

現在のスレッドが目覚めるまで待機します。通常<><は、通知/em> または <em>中断</em> によって、または一定のリアルタイムが経過するまで待機します。

(継承元 Object)
Wait(Int64)

現在のスレッドが目覚めるまで待機します。通常<><は、通知/em> または <em>中断</em> によって、または一定のリアルタイムが経過するまで待機します。

(継承元 Object)
WriteToParcel(Parcel, ParcelableWriteFlags)

このオブジェクトをパーセルにフラット化します。

明示的なインターフェイスの実装

IJavaPeerable.Disposed()

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

(継承元 Object)
IJavaPeerable.DisposeUnlessReferenced()

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

(継承元 Object)
IJavaPeerable.Finalized()

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

(継承元 Object)
IJavaPeerable.JniManagedPeerState

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

(継承元 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

(継承元 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

(継承元 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

(継承元 Object)

拡張メソッド

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

GetJniTypeName(IJavaPeerable)

SyncFence は、ハードウェア ユニットが特定のリソースで作業を完了したときに通知する同期プリミティブを表します。

適用対象