D3DImage.Lock Methode

Definition

Sperrt die D3DImage Vorgänge im Hintergrundpuffer und aktiviert sie.

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

Ausnahmen

Die Sperranzahl entspricht UInt32.MaxValue.

Beispiele

Das folgende Codebeispiel zeigt, wie die Lock Methode aufgerufen wird, um Aktualisierungen des Hintergrundpuffers zu aktivieren. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Hosten von Direct3D9-Inhalten in 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();

Hinweise

Rufen Sie die Lock Methode auf, um den Hintergrundpuffer zu ändern, indem Sie die AddDirtyRect Methoden aufrufen SetBackBuffer . D3DImage Die Anwendung kann zwar gesperrt, aber auch auf der direct3D-Oberfläche gerendert werden, die dem Hintergrundpuffer zugewiesen ist.

Note

Die Lock Methode blockiert, wenn das Renderingsystem den Hintergrundpuffer liest, um den Frontpuffer zu aktualisieren. Verwenden Sie die TryLock Methode, um die Blockierung auf unbestimmte Zeit zu vermeiden.

Gilt für:

Weitere Informationen