Example #1
0
        private bool disposedValue = false; // Для определения избыточных вызовов

        protected virtual void Dispose(bool disposing)
        {
            if (!disposedValue)
            {
                if (disposing)
                {
                    // TODO: освободить управляемое состояние (управляемые объекты).
                    inputLayout.Dispose();
                    inputSignature.Dispose();
                    triangleVertexBuffer.Dispose();
                    vertexShader.Dispose();
                    pixelShader.Dispose();
                    renderTargetView.Dispose();
                    swapChain.Dispose();
                    d3dDevice.Dispose();
                    d3dDeviceContext.Dispose();
                    renderForm.Dispose();
                    triangleVertexBuffer.Dispose();
                }

                // TODO: освободить неуправляемые ресурсы (неуправляемые объекты) и переопределить ниже метод завершения.
                // TODO: задать большим полям значение NULL.
                disposedValue = true;
            }
        }
 private void DisposeDirectXResources()
 {
     _textFormat.Dispose();
     _dwFactory.Dispose();
     _renderTarget.Dispose();
     _renderTargetView.Dispose();
     _d2DFactory.Dispose();
     _swapChain.Dispose();
     _d3DDeviceContext.Dispose();
     _d3DDevice.Dispose();
 }