一章:概述(Part 1)

c#是一种区分大小写的语言。

采用命令行CSC.EXE 编译程序。

IDisposable模式

C#中的昂贵资源比如打开文件的句柄,连接数据库等,都需要通过手工调用IDisposable.Dispose()去释放。并且using语句可以帮助用户及时调用Dispose方法。

等于在try..catch块中finally中调用该方法。

    public class Demo : IDisposable
    {

        private bool disposed = false;
        #region IDisposable Members


        public void Dispose()
        {
            //the value is true means the dispose method is called by user directly.
            Dispose(true);

            //This object will be cleaned up by the Dispose method. Therefore, you should call GC.SupressFinalize to take this object
            //off the finalization queue and prevent finalization code for this object from executing a second time.
            GC.SuppressFinalize(this);
        }

        private void Dispose(bool disposing)
        {
            if (disposed)
            {
                return;
            }
            if (disposing)
            {
                //release managed resources.

            }
            //release unmanaged resources

            disposed = true;
        }

        ~Demo()
        {
            Dispose(false);
        }
        #endregion
    }

原文地址:https://www.cnblogs.com/RitaRichard/p/2082942.html