<PackageReference Include="System.Reactive" Version="6.0.2" />

System.Reactive.Concurrency.AsyncLock

public sealed class AsyncLock : IDisposable
Asynchronous lock.
namespace System.Reactive.Concurrency { public sealed class AsyncLock : IDisposable { public void Wait(Action action); public void Dispose(); public AsyncLock(); } }