public void Dispose() { channel.ObjectReceived -= IncomingChannelData; channel.ConnectionStatusChanged -= LosingConnection; baseChannel.Dispose(); channel.Dispose(); backStream.Dispose(); }
/// <summary>Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.</summary> public void Dispose() { baseChannel.ObjectReceived -= ConnectionRequest; baseChannel.Dispose(); if (ownsBroker) { Broker.Dispose(); } OnDisposed(); }
private void TryClose(IMemoryChannel channel) { try { channel.Write(new ConnectionDispose()); } catch (Exception ex) { LogEnvironment.LogDebugEvent(ex.Message, LogSeverity.Warning); } finally { channel.ObjectReceived -= ClientComm; channel.ConnectionStatusChanged -= ClientConnectionChanged; channel.Dispose(); } }