zoukankan      html  css  js  c++  java
  • 为何有些类中有Dispose方法?

    在使用Stream对象,transactionScop,socket对象时,我们往往会发现在它的内部有一个Dispose()方法,它是干什么用的呢?这要从微软的代码托管开始说起,所谓托管,就是不需要程序员自己去干涉内部分配与销毁,从对象的建立到销毁的过程完全由.net来帮我们去实现。

    .net为提供的类库有两种,即“托管类库”和“非托管类库”,像自定义的类,值类型等,它一般来说,执行的结果可以预知,这时.net帮助我们去管理对象;而如果你要实现,网络上的传递,文件的传递,向服务器发包这些操作,都是系统未知的,即不知道什么时候能执行结束,这时,它们的对象释放,则需要自己去实现,例如:

    1 using System;
    2 public void Dispose ()
    3 {
    4     this.Dispose (true);
    5     GC.SuppressFinalize (this);
    6 }

    这是mvc构造中controller类的实现,它也是非托管的类库,与此同时,还是stream。

    事实上,今天通过一个小例子,让我们知道了,.net中不是所有的对象都是可以先被定义的。

  • 相关阅读:
    2021.1.20 学习总结
    2021.1.19 学习总结
    2021.1.18 学习总结
    学习总结13
    学习总结12
    学习总结11
    学习总结10
    ASP.NET网站开发步骤
    学习总结9
    阅读笔记4
  • 原文地址:https://www.cnblogs.com/lori/p/2562931.html
Copyright © 2011-2022 走看看