c# - C#“新”实例立即处置?
问题描述
C# 相对较新。
我有一个类 ( public class Functions
),它有一个公共函数,我希望能够从不同的类访问它,而无需创建Functions
.
我有几行与以下非常相似的代码:
this.txtENet2GatewayOct1.Text = (new Functions()).GetIPOctet(this.settings.eNet2DefaultGateway, 1);
我很好奇的是:当我执行 a 时(new ClassIMade()).Function
,“新”实例是否会立即被处理掉(从内存中删除)。
我确定这可能不是执行此操作的“正确”方式,但出于这个问题的目的,我不在乎。
解决方案
它不是“立即处理”。它最终由垃圾收集器释放,前提是您的代码中没有任何内容可以使对象保持活动状态。
就 GC 而言,使用内联创建新实例new Functions()
与首先实例化对象然后调用方法没有什么不同。
推荐阅读
- html - 我如何 webscrabe 图像链接选项卡
- sqlite - 如何将带有 ROW_NUM、LIMIT 的 Web2Py SQL 代码翻译成 DAL?
- python - 在画布中更改 turtle.home() 位置
- jquery - 未定义值获取带有 id 作为数组的文本框
- java - 找不到符号方法 substring(int,int)
- python - 从多个网站的单个站点中抓取多个标签
- biopython - 在没有输入文件的情况下在 Biopython 中创建对齐
- php - 未为 Laravel 中的错误创建日志文件 ID
- youtube - 让 YouTube-dl 归档整个频道,无需下载视频
- javascript - 是否可以从多个条件中返回任何一个条件为真(以一种简单的方式)?