以下场景的线程机制

本文关键字:线程 机制 | 更新日期: 2023-09-27 18:15:09

我是一个多线程编程新手。

有可能出现以下情况吗?

如果一个线程正在对一个对象进行写操作,则其他线程不能对该对象进行读写操作。

如果一个人在上面写字,每个人都可以同时读这个对象?

c#解释优先。

以下场景的线程机制

当然,您正在寻找的是ReaderWriterLockSlim(或旧版本的。net上的ReaderWriterLock)。在System.Threading中有一个专门的类。当你写的时候,你取出一个写锁,当你读的时候,你取出一个读锁。然后显示您所描述的行为。

您需要一个ReaderWriterLock对象。它允许您获取读锁或写锁,以及将读锁升级为写锁的能力,以便您可以先检查再写。这篇MSDN文章解释了这一切