protected virtual void Dispose(bool disposing) { if (disposed) { return; } if (disposing) { //清理普通资源 if (anotherResources != null) { anotherResources.Dispose(); anotherResources = null; } //清理非托管资源 if (nativeResources != IntPtr.Zero) { Marshal.FreeHGlobal(nativeResources); nativeResources = IntPtr.Zero; } disposed = true; } }
/// <summary> /// using释放 /// </summary> public void Test02() { using (SampleClass c1 = new SampleClass()) { } using (SampleClass c1 = new SampleClass(), c2 = new SampleClass()) { } using (SampleClass c1 = new SampleClass()) { using (AnotherResources ar = new AnotherResources()) { } } }