の C# のショートカットが気に入っていlock(myLock){ /* do stuff */}
ます。読み取り/書き込みロックに相当するものはありますか? (具体的には ReaderWriterLockSlim です。) 現在、次のカスタム メソッドを使用しています。これは機能すると思いますが、アクションを匿名関数として渡す必要があるため、少し面倒です。可能であれば、標準のロック メカニズムを使用したいと考えています。 .
void bool DoWithWriteLock(ReaderWriterLockSlim RWLock, int TimeOut, Action Fn)
{
bool holdingLock = false;
try
{
if (RWLock.TryEnterWriteLock(TimeOut))
{
holdingLock = true;
Fn();
}
}
finally
{
if (holdingLock)
{
RWLock.ExitWriteLock();
}
}
return holdingLock;
}