<PackageReference Include="System.ServiceModel.Primitives" Version="8.1.0" />

System.ServiceModel.Channels.LifetimeManager

namespace System.ServiceModel.Channels { internal class LifetimeManager { public int BusyCount { get; } protected LifetimeState State { get; } protected object ThisLock { get; } public LifetimeManager(object mutex); public void Abort(); public Task CloseAsync(TimeSpan timeout); public void Close(TimeSpan timeout); protected void DecrementBusyCount(); protected virtual void IncrementBusyCount(); protected virtual void IncrementBusyCountWithoutLock(); protected virtual void OnAbort(); protected virtual IAsyncResult OnBeginClose(TimeSpan timeout, AsyncCallback callback, object state); protected virtual void OnClose(TimeSpan timeout); protected virtual Task OnCloseAsync(TimeSpan timeout); protected virtual void OnEmpty(); protected virtual void OnEndClose(IAsyncResult result); } }