idisposable 相关问题

IDisposable是Microsoft .NET Framework的基类库(BCL)中的一个接口。它旨在提供一种在.NET应用程序代码中释放非托管资源的通用,确定性方法。

如何对终结器进行单元测试?

我有以下类,它是 IDisposable 对象的装饰器(我省略了它添加的内容),它本身使用通用模式实现 IDisposable: 公共课DisposableDeco...

回答 5 投票 0

在析构函数中处置对象

我有一个对象,其中包含一次性对象作为成员。 公开课我的班级 { 私有 MyDisposableMember 成员; 公共做某事 { 使用 (成员 = new MyDisposableMemb...

回答 7 投票 0

在每个函数中使用语句 -> 通过适当的清理转换为类字段?

基本上我有一些如下所示的函数: 我的班级 { 无效 foo() { 使用(SomeHelper助手= CreateHelper()) { // 使用助手做一些事情 ...

回答 6 投票 0

如何在我的自定义类上使用 IDisposable?

这是我所拥有的: 公共无效FindByID(字符串ID) { 使用(解析器解析器=新解析器()){ if ( parser.LoadUserById(id)) { ID = parser.FindID(); 名称 = 解析器。

回答 3 投票 0

我应该将 new HttpRequestMessage() 包装在 using 语句中吗?

我找到了以下代码: 使用 (var requestMessage = new HttpRequestMessage(HttpMethod.Delete, 端点)) { ... HttpResponseMessage响应=等待_client.SendAsync(requestMessage); ...

回答 1 投票 0

为什么TcpListener没有实现IDisposable

为了更好地理解 .NET 网络部分的工作原理,我将浏览 TcpListener(文档、参考源)类的参考源。引起我注意的是它拥有

回答 2 投票 0

一次性课程是否可以强制使用“using”?

我需要强制使用“using”来处置类的新实例。 公共类 MyClass:IDisposable { ... } using(MyClass obj = new MyClass()) // 强制使用“using” { }

回答 11 投票 0

Dispose()会在带有空对象的using语句中调用吗?

在(可能)空对象上使用 using 语句是否安全? 考虑以下示例: 类测试{ IDisposable GetObject(字符串名称) { // 如果没有找到则返回null ...

回答 6 投票 0

当父类也实现 IDisposable 时,在子类上实现 IDisposable

我有一个父类和子类,它们都需要实现 IDisposable。虚拟(和base.Dispose()?)调用应该在哪里发挥作用?当我只是重写 Dispose(bool disducing) 调用时,它...

回答 6 投票 0

如果不能保证垃圾收集器会调用它,为什么我们需要一次性模式中的终结器?

我的问题是:在C#中,如果不能保证垃圾收集器会调用它,为什么我们需要一次性模式中的终结器? 我在理解哲学方面遇到问题......

回答 1 投票 0

结合 foreach 并使用

我正在迭代 ManageObjectCollection。(它是 WMI 接口的一部分)。 然而重要的是下面这行代码。 : foreach(结果中的 ManagementObject 结果) { //c...

回答 6 投票 0

如何在我的 Dispose() 中正确处理 IDisposable 项目列表?

我有一堂这样的课: 公共类 MyFolderRefresher { 公共异步任务 OnRename(RenamedEventArgs e) { // 做一点事 } } 公共类 MyDisposableListOfFileSystemWatchers :

回答 1 投票 0

Icon.FromHandle:我应该处理它,还是调用DestroyIcon?

我使用Win32 SHGetFileInfo 来获取属于某个文件的图标的句柄。 stackoverflow 上也有很多关于如何执行此操作的描述,例如:Get Iconsused by shell 之后

回答 3 投票 0

C# .NET Core - 在外部声明时,一次性对象是否会在 try/catch 块中持续存在?这是不好的做法吗?

尝试通过 Serilog 上下文、using 语句和一些 try/catch 块来理解这里的最佳实践。当我记录任何内容时,我试图在 Serilog 上下文中包含一些数据的 ID

回答 1 投票 0

不再被引用的父对象,如果父对象本身持有存活引用,是否会被GC回收?

如果一个不再被引用的父对象拥有对仍然存在的对象的引用,那么它是否就没有资格被收集,就像在其他 viewmod 中引用的单例服务一样......

回答 1 投票 0

任务中 IDisposable T 的 IDisposable 和/或 IAsyncDisposable 模式<T>

如果我有一个类,其中字段是任务的实例,并且该任务返回一个实现 IDisposable 的类,那么在实例上实现 IDisposable (+/- IAsyncDisposable) 的模式是什么

回答 1 投票 0

如何在包含多个一次性对象的类中正确实现 IDispose 和 IAsyncDispose

我需要实现一个管理多个资源生命周期的类。这些资源可能有不同的 dipose 模式实现: 使用 IDispose 和

回答 1 投票 0

在 SerialPort 的 main() 中添加事件处理程序

我尝试将事件处理程序订阅到数据接收事件。似乎我无法指定事件处理程序函数名称。我不明白为什么 myComPort.DataReceived += 新

回答 3 投票 0

具有一次性成员的 C# ValueTuple

假设我有一个方法 foo,它返回一个 ValueTuple,其中它的成员之一是一次性的,例如 (IDisposable, int)。 确保退回的一次性物品完好无损的最佳方法是什么

回答 3 投票 0

System.Threading.Monitor.Enter(SyncRoot) 未按预期工作,为什么?

我已经用 BlockingEnumerator 类完成了 ObservableCollection 多线程“ObsCollMt”,当使用“ForEach”枚举项目时,该类应该锁定底层 _list。 我...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.