gpt4 book ai didi

.net - IDisposable 对象的标准集合

转载 作者:行者123 更新时间:2023-12-04 08:30:44 27 4
gpt4 key购买 nike

我有一堆 IDisposable查找表中的对象(现在是普通的旧字典<>),但为了简化代码并避免错误,我正在寻找一个“拥有”它所拥有的项目的集合类,并避免重新发明轮子 - 这样做一个类已经存在?

规范应该是:
- 收藏品必须是一次性的,当它被处理掉时,所有包含的物品也应该被处理掉。
- 每当删除项目时,它是 Dispose() -d 首先。
- 理想情况下,集合将是通用的,类型约束强制执行 IDisposable - 包含的类型。

我有点怀疑这样的类是否存在,但我对 ReadOnlyCollection 的存在感到惊喜。和 ObservableCollection前...

本质上,我想要 C++ STL 容器的等效项,但随后是 CLR ;-)。

最佳答案

您正在寻找 CompositeDisposable .

    using System.Reactive.Disposables;

...

CompositeDisposable xs = new CompositeDisposable(Disposable.Empty);
xs.Add(Disposable.Empty);
xs.Add(Disposable.Empty);
xs.Dispose();

关于.net - IDisposable 对象的标准集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1153707/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com