Compartilhar via


D3DImage.Lock Método

Definição

Bloqueia o D3DImage e permite operações no buffer de fundo.

public:
 void Lock();
public void Lock ();
member this.Lock : unit -> unit
Public Sub Lock ()

Exceções

A contagem de bloqueios é igual a UInt32.MaxValue.

Exemplos

O exemplo de código a seguir mostra como chamar o Lock método para habilitar atualizações para o buffer traseiro. Para obter mais informações, consulte Instruções Passo a Passo: Hospedando Conteúdo Direct3D9 no WPF.

d3dimg.Lock();
// Repeatedly calling SetBackBuffer with the same IntPtr is 
// a no-op. There is no performance penalty.
d3dimg.SetBackBuffer(D3DResourceType.IDirect3DSurface9, pSurface);
HRESULT.Check(Render());
d3dimg.AddDirtyRect(new Int32Rect(0, 0, d3dimg.PixelWidth, d3dimg.PixelHeight));
d3dimg.Unlock();

Comentários

Chame o Lock método para alterar o buffer de fundo chamando os AddDirtyRect métodos e SetBackBuffer . Enquanto o D3DImage estiver bloqueado, seu aplicativo também pode renderizar para a superfície Direct3D atribuída ao buffer traseiro.

Observação

O Lock método bloqueia quando o sistema de renderização está lendo o buffer traseiro para atualizar o buffer frontal. Use o TryLock método para evitar o bloqueio indefinidamente.

Aplica-se a

Confira também