/// <summary> /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. /// </summary> public override void Dispose() { Log.Trace("AlpacaBrokerage.Dispose(): Disposing of Alpaca brokerage resources."); _sockClient?.Dispose(); _messagingRateLimiter.Dispose(); }
/// <summary> /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. /// </summary> public override void Dispose() { Log.Trace("AlpacaBrokerage.Dispose(): Disposing of Alpaca brokerage resources."); _cancellationTokenSource.Dispose(); _sockClient?.Dispose(); _polygonStreamingClient?.Dispose(); _messagingRateLimiter.Dispose(); }
protected virtual void Dispose(bool disposing) { if (disposing) { if (_rateGate != null) { _rateGate.Dispose(); } } _rateGate = null; }
protected virtual void Dispose(bool disposing) { if (!_disposed) { if (disposing) { // dispose managed state (managed objects) _rateGate.Dispose(); } // free unmanaged resources (unmanaged objects) and override finalizer _disposed = true; } }
public void RateGate_ShouldSkipBecauseOfTimeout() { var gate = new RateGate(1, TimeSpan.FromSeconds(20)); var timer = Stopwatch.StartNew(); Assert.IsTrue(gate.WaitToProceed(-1)); Assert.IsFalse(gate.WaitToProceed(0)); timer.Stop(); Assert.LessOrEqual(timer.Elapsed, TimeSpan.FromSeconds(10)); gate.Dispose(); }
private bool disposedValue = false; // To detect redundant calls protected virtual void Dispose(bool disposing) { if (!disposedValue) { if (disposing) { if (_rateGate != null) { _rateGate.Dispose(); } } _rateGate = null; disposedValue = true; } }
public void Dispose() { _rateGate.Dispose(); }