← All source files

V1 / 8f6c47b125e8

SemaphoreLease.cs

Lilith/Core/Extensions/SemaphoreLease.cs

Changed in this version
CS
namespace Lilith.Core.Extensions;

internal sealed class SemaphoreLease(SemaphoreSlim gate) : IDisposable
{
    private SemaphoreSlim? _gate = gate;
    public void Dispose() => Interlocked.Exchange(ref _gate, null)?.Release();
}