以下场景的线程机制
本文关键字:线程 机制 | 更新日期: 2023-09-27 18:15:09
我是一个多线程编程新手。
有可能出现以下情况吗?
如果一个线程正在对一个对象进行写操作,则其他线程不能对该对象进行读写操作。
如果一个人在上面写字,每个人都可以同时读这个对象?
c#解释优先。
当然,您正在寻找的是ReaderWriterLockSlim
(或旧版本的。net上的ReaderWriterLock
)。在System.Threading
中有一个专门的类。当你写的时候,你取出一个写锁,当你读的时候,你取出一个读锁。然后显示您所描述的行为。
您需要一个ReaderWriterLock
对象。它允许您获取读锁或写锁,以及将读锁升级为写锁的能力,以便您可以先检查再写。这篇MSDN文章解释了这一切