diff Implab/Disposable.cs @ 48:d9d794b61bb9 interactive logger

Interactive tracing Improved working with tracing contexts
author cin
date Fri, 18 Apr 2014 12:34:45 +0400
parents fe33f4e02ad5
children 673947ce458a
line wrap: on
line diff
--- a/Implab/Disposable.cs	Thu Apr 17 18:49:36 2014 +0400
+++ b/Implab/Disposable.cs	Fri Apr 18 12:34:45 2014 +0400
@@ -1,10 +1,14 @@
-using System;
+using Implab.Diagnostics;
+using System;
 using System.Collections.Generic;
 using System.Diagnostics;
 using System.Linq;
 using System.Web;
 
 namespace Implab {
+    /// <summary>
+    /// Объект, поддерживающий освобождение ресурсов.
+    /// </summary>
     public class Disposable : IDisposable {
         
         bool m_disposed;
@@ -19,7 +23,16 @@
             if (m_disposed)
                 throw new ObjectDisposedException(this.ToString());
         }
-
+        /// <summary>
+        /// Переводит объект в состояние <c>Disposed</c> и вызывает событие <see cref="Disposed"/>
+        /// </summary>
+        /// <param name="disposing">Признак того, что нужно освободить ресурсы, иначе данный метод
+        /// вызван сборщиком мусора и нужно освобождать ТОЛЬКО неуправляемые ресурсы ТОЛЬКО этого
+        /// объекта.</param>
+        /// <remarks>
+        /// Данный метод осуществляет проверку того, что объект уже был освобожден, чтобы не вызывать
+        /// событие <see cref="Disposed"/>. Не поддерживает многопоточность.
+        /// </remarks>
         protected virtual void Dispose(bool disposing) {
             if (disposing && !m_disposed) {
                 m_disposed = true;
@@ -34,8 +47,11 @@
             GC.SuppressFinalize(this);
         }
 
+        /// <summary>
+        /// Записывает сообщение об утечке объекта.
+        /// </summary>
         protected virtual void ReportObjectLeaks() {
-            Trace.TraceWarning("The object is marked as disposable but isn't disposed properly: {0}", this);
+            TraceLog.TraceWarning("The object is marked as disposable but isn't disposed properly: {0}", this);
         }
 
         ~Disposable() {