D3DImage.Lock 方法

定义

锁定 D3DImage 并允许对后台缓冲区进行操作。

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

例外

示例

下面的代码示例演示如何调用 Lock 方法来启用对后台缓冲区的更新。 有关详细信息,请参阅演练:在 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();

注解

调用 方法, Lock 通过调用 AddDirtyRectSetBackBuffer 方法来更改后台缓冲区。 锁定时 D3DImage ,应用程序还可以呈现到分配给后台缓冲区的 Direct3D 图面。

注意

Lock 呈现系统读取后台缓冲区以更新前缓冲区时, 方法会阻止。 TryLock使用 方法可避免无限期阻塞。

适用于

另请参阅