共用方式為


D3DImage.Unlock 方法

定義

遞減 D3DImage 的鎖定計數。

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

範例

下列程式碼範例示範如何呼叫 Unlock 方法,將更新的背景緩衝區複製到前端緩衝區。 如需詳細資訊,請參閱 逐步解說:在 WPF 中裝載 Direct3D9 內容

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();

備註

當 的 D3DImage 鎖定計數達到零時, D3DImage 會完全解除鎖定。 D3DImage如果影像已變更先前對 方法的呼叫 AddDirtyRect 所指定的區域,則會標示為轉譯。

認可變更並轉譯發生時,直到轉譯執行緒將背景緩衝區的內容複寫到前端緩衝區之前,對方法區塊的額外呼叫 Lock 。 此同步處理可避免顯示成品,例如卸載。

注意

解除鎖定時 D3DImage 請勿更新 Direct3D 表面。

適用於

另請參閱