# ExclusiveLockCoordinatorGrain

Package: [Microsoft.Orleans.Transactions.TestKit.Base](/orleans/docs/api/csharp/microsoft.orleans.transactions.testkit.base/) 10.0.0

[NuGet package](https://www.nuget.org/packages/Microsoft.Orleans.Transactions.TestKit.Base) | [Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Transactions.TestKit.Base/Grains/ExclusiveLockCoordinatorGrain.cs#L7)

```csharp
[Orleans.Concurrency.StatelessWorker]
[Orleans.Concurrency.Reentrant]
public class ExclusiveLockCoordinatorGrain : Grain, IGrain, IGrainWithGuidKey, IAddressable, IExclusiveLockCoordinatorGrain
```

The abstract base class for all grain classes.

## Constructors

- [ExclusiveLockCoordinatorGrain](/orleans/docs/api/csharp/microsoft.orleans.transactions.testkit.base/orleans.transactions.testkit.exclusivelockcoordinatorgrain/constructors/constructor-51d0e799/)

## Methods

- [ReadThenWrite(ITransactionTestGrain, int)](/orleans/docs/api/csharp/microsoft.orleans.transactions.testkit.base/orleans.transactions.testkit.exclusivelockcoordinatorgrain/methods/readthenwrite-orleans-transactions-testkit-itransactiontestgrain-int-fc8017bf/)
- [ReadThenWriteWithExclusiveLock(IExclusiveLockTransactionTestGrain, int)](/orleans/docs/api/csharp/microsoft.orleans.transactions.testkit.base/orleans.transactions.testkit.exclusivelockcoordinatorgrain/methods/readthenwritewithexclusivelock-orleans-transactions-testkit-iexclusivelocktransa-47f9a48f/)
