gpt4 book ai didi

.net - 多线程中读写隔离

转载 作者:行者123 更新时间:2023-12-05 00:33:52 25 4
gpt4 key购买 nike

在多线程应用程序中。我有一堆循环遍历集合以读取信息的函数。我还有一堆函数可以修改同一个集合。

我正在寻找一种将所有读取和写入隔离在一起的方法。我不希望在读取过程中进行写入。我正在考虑在集合对象上使用 SyncLock,但这会阻止尝试并行工作的多个读取。

最佳答案

你有没有考虑过ReaderWriterLockSlim ?你可能想要 check that using it is faster than a simple Monitor lock尽管。不要考虑旧的 ReaderWriterLock。以下是 Jeffrey Richter 对此的评价:

The Microsoft® .NET Framework Class Library includes a ReaderWriterLock class in the System.Threading namespace that lets you obtain multiple-reader/single-writer semantics. While it is nice that a class like this exists, there are several problems with its implementation and I recommend you do not use it.

关于.net - 多线程中读写隔离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2402398/

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