//==================================== // internal implementation //==================================== public void ProbeChannel() { try { Accept(); foreach (var clientReadChannel in _clientReadChannels.ToArray()) { if (clientReadChannel.Available > 0) { _socketChannelSelectionReader.Read(clientReadChannel, new RawMessageBuilder(_maxMessageSize)); } if (!clientReadChannel.IsSocketConnected()) { clientReadChannel.Close(); _clientReadChannels.Remove(clientReadChannel); } } } catch (Exception e) { Logger.Error($"Failed to read channel selector for: '{_name}' because: {e.Message}", e); } }
//==================================== // internal implementation //==================================== public void ProbeChannel() { try { Accept(); foreach (var clientReadChannel in _clientReadChannels.ToArray()) { if (clientReadChannel.Available > 0) { _logger.Debug("Multicast publisher reader reading on client channel"); _socketChannelSelectionReader.Read(clientReadChannel, new RawMessageBuilder(_maxMessageSize)); } } } catch (Exception e) { Logger.Error($"Failed to read channel selector for: '{_name}' because: {e.Message}", e); } }