处理重复使用的对象

本文关键字:对象 处理 | 更新日期: 2023-09-27 18:17:48

我已经环顾四周,我找不到这方面的最佳实践。我有一个循环,它创建一个对象,然后在每次进程运行时处理它。然而,这个对象总是相同的,并且大约每分钟在程序中使用一次,这也是程序中其他进程运行的频率。每次进程运行时,我应该在这个对象上调用Dispose();还是仅仅保留它,因为它总是完全相同?语言是c#

处理重复使用的对象

如果它按照您编写的方式工作,似乎您不应该更改它。除非对象的创建或销毁成本特别高。但如果你不需要这个东西,除了每分钟的那一小段时间,为什么要把它放在身边呢?

这样看。如果对象仅由一个特定任务使用,那么让该任务控制对象的生命周期可以简化代码。否则,主程序将不得不在启动时创建对象,并在关闭时处理它。此外,程序中的其他线程或任务也可能访问它。将访问权限限制在需要它的任务上,可以防止一大堆其他问题。

如果初始化需要很长时间,则应该将其保存在某个地方。

根据对象的类型,您可能还需要考虑将其设置为单例。当你有一个对象需要很长时间来初始化,或者这个对象在多个地方被使用时,单例模式特别有用。

只创建一次对象,并在关闭应用程序时调用dispose。这也取决于你在做什么

也许你应该看看using语句。它在使用后处理对象。看到这个

这是语法

using (var myObject = new MyCustomObject())
{
//Do something with my object
}