加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 使用“using”语句进行处理

发布时间:2020-12-15 04:05:25 所属栏目:百科 来源:网络整理
导读:这有道理吗 有一个简单的课 class Test { public Test() { // Do whatever } } 然后实例化它 using(new Test()){ // Nothing in here} 使用声明只是为了确保测试被处理. 如果我打电话,什么时候会被处理 new Test() 解决方法 测试不是IDisposable,所以甚至不
这有道理吗

有一个简单的课

class Test
   {
     public Test()
     {
        // Do whatever
     }
   }

然后实例化它

using(new Test())
{
  // Nothing in here
}

使用声明只是为了确保测试被处理.
如果我打电话,什么时候会被处理

new Test()

解决方法

测试不是IDisposable,所以甚至不会编译.但是,如果是一次性使用,是使用会做,而新的本身不会.这是一个不寻常的用法,但我看到类似的.很少.

根据您的评论(主要问题),我怀疑垃圾收集和处理是混乱的.没有办法强制收集某些东西,而不是GC(你不应该做).除非你有一个非常好的理由要收集,只要让它成为 – 有可能是“第0代”,无论如何也将被廉价收集.

此外,“做任何事情”建议在构造函数中执行某些操作,但不关心创建的对象;一个静态方法是最好的:

public class Test { /* could be static */
     public static void DoSomething() { ... }
}
...
Test.DoSomething();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读