腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
如何映射ImmutableArray而不将其转换为
线程
安全
的
IEnumerable
?
、
、
所以我在多
线程
环境中工作,我不想一直使用ImmutableArray,因为它是
线程
安全
的。不幸的是,ImmutableArray实现了
线程
不
安全
的接口,因此LINQ的Select
返回
IEnumerable
。 这样,我的
线程
安全
变量就变成
线程
不
安全
了。
浏览 6
提问于2016-11-10
得票数 4
回答已采纳
3
回答
是否
可以从T[]获取IEnumerator<T>?
、
、
、
、
假设我想创建一个默认情况下
线程
安全
的集合类。对于初学者来说,让类实现ICollection<T>是有意义的。但是实现ICollection<T>需要我实现
IEnumerable
<T>和
IEnumerable
(非泛型),这对于
线程
安全
的集合来说有点棘手。我已经有了一个
线程
安全
的getValues函数,它锁定Values并以T[]数组的形式
浏览 0
提问于2009-10-15
得票数 1
回答已采纳
1
回答
收益率是折返的吗?
、
可以从多个
线程
安全
地调用使用yield return
返回
IEnumerable
的静态类中的静态函数吗?public static
IEnumerable
<FooClass> FooClassObjects() foreach (FooClassWrapper obj in listOfFooClassWrappers) yield return obj.fooClassInst;} 每个调用它的
线程
都会收到对集合中每个对象
浏览 0
提问于2015-12-14
得票数 14
回答已采纳
2
回答
C#
返回
ConcurrentBag的副本
、
但是,我对此有兴趣,但
返回
ConcurrentBag<>的方式
是否
是我所做的正确实践?如果不是,如何
返回
ConcurrentBag<>以便循环遍历并显示它?
浏览 1
提问于2015-06-08
得票数 9
回答已采纳
6
回答
IEnumerable
<T>
线程
安全
?
、
、
、
我有一个填充List<T>的主
线程
。此外,我创建了一个对象链,这些对象将在不同的
线程
上执行,需要访问列表。原始列表在生成后将永远不会被写入。我的想法是将列表作为
IEnumerable
<T>传递给在其他
线程
上执行的对象,主要是因为不允许那些实现这些对象的人错误地写入列表。换句话说,如果保证原始列表不会被写入,那么多
线程
在
IEnumerable
上使用.Where或foreach
是否
安全
? 如果原始集合永远不变,我不确定迭代器本身<e
浏览 1
提问于2011-05-12
得票数 15
回答已采纳
2
回答
List<T>构造函数
线程
安全
吗?
、
、
更具体地说,如果用于初始化列表的
IEnumerable
在构造新列表的过程中被修改,那么List(T)(
IEnumerable
(T))是
线程
安全
的吗?
浏览 0
提问于2010-03-01
得票数 3
回答已采纳
1
回答
流API周围的锁定和
线程
安全
、
、
、
、
可能是一个相当简单的问题,但我想知道使代码
线程
安全
的最佳实践。它
返回
一个
IEnumerable
<ApiDto>。如何确保代码是
线程
安全
的?这是我的类,它从API获取项。ApiRepo private IApi api; { api=new Api("url");
浏览 0
提问于2018-07-05
得票数 0
3
回答
在
返回
IEnumerable
的方法中使用锁时,linq延迟执行
、
、
考虑一个由多个
线程
访问的简单Registry类:{ { { }
浏览 1
提问于2012-02-01
得票数 13
回答已采纳
3
回答
以
线程
安全
方式
返回
属性(如果不为null )。
、
、
、
我的问题实际上是对的扩展,所以在
返回
属性之前测试属性的问题是空的。<T> _Values { get; set; } { {
浏览 3
提问于2015-12-16
得票数 2
回答已采纳
3
回答
IEnumerable
Linq方法
线程
安全
吗?
、
、
、
我想知道Linq扩展方法
是否
是原子的?或者,在进行任何类型的迭代之前,
是否
需要对跨
线程
使用的任何lock对象进行
IEnumerable
?
IEnumerable
<T> _objs = //...2-包
浏览 5
提问于2012-06-19
得票数 24
回答已采纳
2
回答
在C#中,使用for循环迭代数组是
线程
安全
操作吗?使用foreach循环迭代
IEnumerable
<T>怎么样?
、
、
、
、
根据我的理解,给定一个C#数组,同时从多个
线程
迭代数组的行为是--一种
线程
安全
操作。 通过迭代数组,我意味着通过一个普通的for 循环读取数组中的所有位置。,没有必要用
线程
安全
类型替换string[] (例如ImmutableArray<string> )。根据我的理解,在这个场景中,没有保证同时从多个
线程
迭代这个对象是
线程
安全
操作。换句话说,从不同
线程
同时迭代
IEnumerable
<T>实例
浏览 0
提问于2019-11-14
得票数 8
回答已采纳
8
回答
集合的参数/
返回
应该是
IEnumerable
<T>还是T[]?
、
由于我一直在整合Linq思想,我越来越倾向于通过
IEnumerable
<T>泛型类型传递集合,这似乎构成了大多数Linq操作的基础。但是,我想知道,随着对
IEnumerable
<T>泛型类型的后期评估,这
是否
是一个好主意。使用T[]泛型类型更有意义吗?IList<T>?还是别的什么? 编辑:下面的评论非常有趣。但是,有一件事似乎还没有得到解决,那就是
线程
安全
问题。例如,如果您将一个
IEnumerable
<T>参数带到一个方法中,并且它在一个
浏览 6
提问于2008-12-28
得票数 12
回答已采纳
3
回答
在哪种情况下,我们需要ReadOnlyCollection?
Dotnet4.5引入了。我的问题是它的实际用途是什么?我们可能需要这种数据结构的场景是什么?
浏览 0
提问于2012-10-31
得票数 0
4
回答
多
线程
应用程序中的共享
IEnumerable
<T>和IQueryable<T>
、
、
、
对于多
线程
应用程序中如何访问共享
IEnumerable
和IQueryable,我并不怀疑。 }现在我的疑问是:由于BeginInvoke()是异步的,这意味着所有文件的所有SomeHandler中的所有foreach都将并行执行(每个在自己的
线程
中),那么
IEnumerable
的共享实例会像预期的/正常的那样枚举吗?我
是否
可以在多个
线程
中共享同一个
IEnumerable
实例,并并行
浏览 10
提问于2011-04-15
得票数 5
回答已采纳
4
回答
这个方法是
线程
安全
的吗?
、
、
谁能告诉我下面的方法是不是
线程
安全
的。另外,请假定对_cache.GetOrCreate(...)的调用是
线程
安全
的。此方法是应用程序中创建或更新区域(字典)的唯一位置。包含此方法的类是一个单例,因此将有多个
线程
访问它。public
IEnumerable
<string> GetReportLookupItems<T>(string cacheKey, Func<
IEnumerable
<string>> factory)
浏览 0
提问于2011-01-26
得票数 1
回答已采纳
3
回答
我需要在锁中使用和赋值吗?
、
、
、
这可能是一个愚蠢的问题,但我
是否
需要对锁使用和赋值,或者我可以简单地
返回
结果。我有一个私有的帮助器方法,它
返回
一个
IEnumerable
文件名列表。它使用锁来确保该方法在遍历m_transfers集合时是
线程
安全
的。lock (m_transfers.Lock) updated = m_transfers.Values.Where(transfer
浏览 2
提问于2012-09-12
得票数 1
回答已采纳
2
回答
下面的静态方法
线程
安全
吗?
、
、
、
、
今天我在我们的代码库中发现了以下方法,它让我意识到它可能不是
线程
安全
的。我认为
IEnumerable
可能是一个引用类型,并且可能在代码执行时被另一个
线程
修改。这是正确的吗,或者这个方法到底是
线程
安全
的吗?如果不是,这个方法是静态的吗?似乎使它成为一个实例方法不会改变entities参数在另一个
线程
中被修改的可能性。</param> internal static void LinqEntitiesToCsv<T>(
IEnumer
浏览 1
提问于2012-02-10
得票数 1
回答已采纳
1
回答
为什么c#迭代器跟踪使用互锁操作创建
线程
?
、
微软用他们的自动迭代器实现了一个简单的性能优化--
返回
的
IEnumerable
可以作为IEnumerator重用,省去了创建对象的麻烦。我不能理解的是为什么设计团队采取了他们所做的方法来确保
线程
安全
。每个
IEnumerable
都保留一个创建
线程
的托管
线程
ID字段,然后在调用GetEnumerator时根据该字段检查该
线程
ID,只有当它是同一个
线程
,并且是第一次被调用时,
IEnumerable
才能将其自身作为IEnum
浏览 4
提问于2011-11-28
得票数 4
回答已采纳
4
回答
C#
是否
可以从一个
线程
设置字典对象,从另一个
线程
获取
、
、
、
从一个
线程
调用方法Update,从另一个
线程
获取Map是
线程
安全
吗?Example public ReadOnlyDictionary<string, string> Map{ get; private set; } .ToReadOnlyDictionary(); // he
浏览 1
提问于2018-03-26
得票数 3
回答已采纳
5
回答
返回
一个
IEnumerable
<>是
线程
安全
的吗?
、
、
我有一个Visual Studio2008 C# .NET 3.5项目,我想在其中拥有一个
线程
安全
的Foo对象池。return foo_pool_[key]; } } } }public
IEnumerable</em
浏览 4
提问于2012-04-20
得票数 23
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Executors返回的线程池对象的弊端
获取线程的返回值,基于Callable接口实现多线程
基于Callable接口实现java多线程,获取线程的返回值
Java 实现线程的方式有几种方式?带有返回值的线程怎么实现?
浅析:线程安全
热门
标签
更多标签
云服务器
ICP备案
腾讯会议
云直播
对象存储
活动推荐
运营活动
广告
关闭
领券