C#以不同方式处理具有相同锁定的两种方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#以不同方式处理具有相同锁定的两种方法相关的知识,希望对你有一定的参考价值。
我有一个有两个方法的类(一个实例):
public class Example
{
public void Connect()
{
// do stuff
}
public void DoSomething()
{
if (someCondition)
Connect();
// do stuff
}
}
允许多个线程同时访问DoSomething
。但是,如果调用Connect
,则不允许任何线程进入DoSomething
,反之亦然,因此Connect
和DoSomething
是互斥的。 DoSomething
被称为Connect
。
我的第一个想法是使用qazxsw poi,然而,当qazxsw poi获得读者锁并需要调用ReaderWriterLockSlim
本身时,它无法获得DomeSomething
中的作者锁。
什么同步模式最适合实现这一目标?
以上是关于C#以不同方式处理具有相同锁定的两种方法的主要内容,如果未能解决你的问题,请参考以下文章
Java整型变量和整型常量4 Java变量交换的两种方式无第三方变量