/// <summary> /// Raise message event. /// </summary> /// <param name="args"></param> private void RaiseMessageEvent(WebSocketClientEventArgs args) { try { Message?.Invoke(this, args); } catch (OperationCanceledException) { } catch (Exception e) { _logger?.LogError(e, $"{nameof(WebSocketClient)}: Unhandled message event handler exception."); } }
/// <summary> /// Raise message event. /// </summary> /// <param name="args"></param> protected void RaiseMessageEvent(WebSocketClientEventArgs args) { try { Message?.Invoke(this, args); } catch (OperationCanceledException) { } catch (Exception e) { Logger?.LogError(e, $"{GetType().Name}: Unhandled message event handler exception."); } }
private void OnClientMessage(object sender, WebSocketClientEventArgs e) { // Provides buffering and single-threaded execution. _bufferBlock.Post(e.Message); var count = _bufferBlock.Count; if (count <= _maxBufferCount) { return; } _maxBufferCount = count; if (_maxBufferCount > 1) { _logger?.LogTrace($"{nameof(BinanceWebSocketStream)} - Maximum buffer block count: {_maxBufferCount}"); } }