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 чтобы избежать блокировки на неопределенный срок.