【发布时间】:2012-03-31 04:25:55
【问题描述】:
我正在使用此处描述的模式来管理处置: http://www.developerzen.com/2006/01/09/finalizableobject-developing-a-base-class-for-idisposable-objects/
什么算作“非托管资源”?
以下是我心中的一些困惑点:
- 在某些时候,.NET 只是包装 Win32 调用,对吗?那么大多数.NET 对象在某种程度上不是非托管资源吗?
- 对于我们有 .NET 包装器的 COM 对象,它们是什么考虑的?
- 那些仅从 P/Invokes 获得功能的托管类呢?
- 内部使用本机库的 C++/CLI 类呢?在 C# 级别,具有析构函数的 C++/CLI 类现在实现了 IDisposable...它们被认为是什么?
我意识到那篇博文有点老了。如果有更现代的方法来管理非托管和托管对象的生命周期,请提出建议。
编辑:投票结束此问题的人,请提供一些有关我如何改进问题的详细信息。
【问题讨论】:
-
“如果有解决这个问题的新方法……” 究竟是什么问题?
-
管理非托管和托管对象的生命周期。如果您以错误的顺序执行此操作,您可能会出现死锁
-
the documentation中给出的例子有什么问题?
-
@CodyGray,你的问题是什么?他要求澄清他的想法。
-
@Akash:我也在要求澄清。我不明白他要解决的问题是什么。我什么时候说过或表明我对这个问题有疑问?
标签: .net