Поделиться через


D3DImage.Lock Метод

Определение

Блокирует объект D3DImage и делает возможными операции с задним буфером.

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

Исключения

Число блокировок равно UInt32.MaxValue.

Примеры

В следующем примере кода показано, как вызвать Lock метод для включения обновлений обратного буфера. Дополнительные сведения см. в статье Пошаговое руководство. Размещение содержимого Direct3D9 в 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();

Комментарии

Вызовите метод , Lock чтобы изменить задний буфер, вызвав AddDirtyRect методы и SetBackBuffer . D3DImage В то время как объект заблокирован, приложение также может выполнять отрисовку на поверхности Direct3D, назначенной обратному буферу.

Примечание

Метод Lock блокирует, когда система отрисовки считывает задний буфер для обновления переднего буфера. Используйте метод , TryLock чтобы избежать блокировки на неопределенный срок.

Применяется к

См. также раздел