Пример #1
0
 /// <summary>
 /// IDisposable を直接継承しているクラス用の Disposer コンストラクタ
 /// </summary>
 /// <param name="obj">IDisposable を直接継承しているクラスのオブジェクト</param>
 /// <param name="releaseManaged">obj のマネージドリソースを解放するメソッド</param>
 /// <param name="releaseUnmanaged">obj Noアンマネージドリソースを解放するメソッド</param>
 public Disposer(
         object obj,
         ReleaseManagedOrUnmanagedDelegate releaseManaged,
         ReleaseManagedOrUnmanagedDelegate releaseUnmanaged
         ) : this(obj, null, releaseManaged, releaseUnmanaged)
 {
 }
Пример #2
0
        /// <summary>
        /// IDisposable を継承しているクラスの派生クラス用の Disposer コンストラクタ
        /// </summary>
        /// <param name="obj">IDisposable を継承しているクラスの派生クラスのオブジェクト</param>
        /// <param name="disposeBase">obj のベースクラスの Dispose を実行するメソッド</param>
        /// <param name="releaseManaged">obj のマネージドリソースを解放するメソッド</param>
        /// <param name="releaseUnmanaged">obj のアンマネージドリソースを解放するメソッド</param>
        public Disposer(
                object obj,
                DisposeBaseDelegate disposeBase,
                ReleaseManagedOrUnmanagedDelegate releaseManaged,
                ReleaseManagedOrUnmanagedDelegate releaseUnmanaged
                )
        {
            if (obj == null)
            {
                throw new System.ApplicationException();
            }

            disposeObject = obj;
            DisposeBase = disposeBase;
            ReleaseManaged = releaseManaged;
            ReleaseUnmanaged = releaseUnmanaged;

            disposed = false;
        }