Compartilhar via


SyncFence Classe

Definição

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

[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
Herança
SyncFence
Atributos
Implementações

Comentários

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico. Eles inicialmente começam em um estado não sinalizado e fazem uma transição única para um estado sinalizado ou de erro. Os SyncFences são criados por várias APIs de dispositivo em resposta ao envio de tarefas para o dispositivo. Eles não podem ser criados nem sinalizados pelo espaço do usuário. Como resultado, isso significa que um SyncFence sempre fará progresso.

SyncFence geralmente vêm em uma de duas variedades. "Cercas de apresentação" referem-se a um SyncFence quando a gravação em um buffer é concluída. "Liberar cercas" refere-se a quando a leitura de um buffer terminou.

Por exemplo, uma renderização de GPU para um framebuffer pode gerar uma cerca de sincronização, por exemplo, um EGLSync ou VkFence, que sinaliza quando a renderização foi concluída. Uma vez que a cerca sinaliza, o armazenamento de backup para o framebuffer pode ser lido com segurança, como para exibição ou para codificação de mídia. Isso seria chamado de "cerca de apresentação".

Da mesma forma, ao usar um android.media.ImageWriter é possível que um android.media.Image retornado por ImageWriter#dequeueInputImage() já tenha um Image#getFence() fence conjunto nele. Isso seria o que é referido como uma "cerca de liberação" ou uma "cerca de acqurie" e indica a cerca que o escritor deve esperar antes de escrever no buffer subjacente. No caso do ImageWriter isso é feito automaticamente quando o eg Image#getPlanes() é chamado, no entanto, ao usá-lo Image#getHardwareBuffer() é responsabilidade do chamador garantir que a cerca de liberação tenha sinalizado antes de gravar no buffer.

Documentação Java para android.hardware.SyncFence.

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.

Campos

SignalTimeInvalid

Um tempo de sinal inválido.

SignalTimePending

Um tempo de sinal pendente.

Propriedades

Class

Retorna a classe de tempo de execução deste Object.

(Herdado de Object)
Creator

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

Handle

O identificador para a instância subjacente do Android.

(Herdado de Object)
IsValid

Verifica se o objeto SyncFile é válido.

JniIdentityHashCode

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

(Herdado de Object)
JniPeerMembers

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

PeerReference

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

(Herdado de Object)
SignalTime

Retorna o tempo, em nanossegundos, que a cerca sinalizou no domínio de tempo CLOCK_MONOTONIC.

ThresholdClass

Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

(Herdado de Object)
ThresholdType

Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código.

(Herdado de Object)

Métodos

Await(Duration)

Aguarda que um SyncFence sinalize até a duração do tempo limite.

AwaitForever()

Espera para sempre por um SyncFence para sinalizar.

Clone()

Cria e retorna uma cópia desse objeto.

(Herdado de Object)
Close()

Feche o SyncFence.

DescribeContents()

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

Dispose()

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

(Herdado de Object)
Dispose(Boolean)

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

(Herdado de Object)
Equals(Object)

Indica se algum outro objeto é "igual" a este.

(Herdado de Object)
GetHashCode()

Retorna um valor de código hash para o objeto.

(Herdado de Object)
JavaFinalize()

Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto.

(Herdado de Object)
Notify()

Ativa um único thread que está aguardando no monitor deste objeto.

(Herdado de Object)
NotifyAll()

Ativa todos os threads que estão aguardando no monitor deste objeto.

(Herdado de Object)
SetHandle(IntPtr, JniHandleOwnership)

Define a propriedade Handle.

(Herdado de Object)
ToArray<T>()

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

(Herdado de Object)
ToString()

Retorna uma representação de cadeia de caracteres do objeto.

(Herdado de Object)
UnregisterFromRuntime()

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

(Herdado de Object)
Wait()

Faz com que o thread atual aguarde até que ele seja ativado, normalmente sendo <em notificado</em> ou <em>interrompido</em>>.

(Herdado de Object)
Wait(Int64)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido.

(Herdado de Object)
Wait(Int64, Int32)

Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido.

(Herdado de Object)
WriteToParcel(Parcel, ParcelableWriteFlags)

Nivele este objeto em um Parcel.

Implantações explícitas de interface

IJavaPeerable.Disposed()

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

(Herdado de Object)
IJavaPeerable.DisposeUnlessReferenced()

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

(Herdado de Object)
IJavaPeerable.Finalized()

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

(Herdado de Object)
IJavaPeerable.JniManagedPeerState

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

(Herdado de Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

(Herdado de Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

(Herdado de Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

(Herdado de Object)

Métodos de Extensão

JavaCast<TResult>(IJavaObject)

Executa uma conversão de tipo verificada em tempo de execução do Android.

JavaCast<TResult>(IJavaObject)

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

GetJniTypeName(IJavaPeerable)

Um SyncFence representa uma primitiva de sincronização que sinaliza quando as unidades de hardware concluíram o trabalho em um recurso específico.

Aplica-se a