static void FactoryCloseCallback(IAsyncResult result) { if (result.CompletedSynchronously) { return; } IChannelFactory factory = (IChannelFactory)result.AsyncState; factory.EndClose(result); }
static void BindLifetimes(IChannelFactory factory, IChannel channel) { channel.Closed += delegate { IAsyncResult result = factory.BeginClose(FactoryCloseCallback, factory); if (result.CompletedSynchronously) { factory.EndClose(result); } }; }
protected override void OnEndClose(IAsyncResult result) { inner.EndClose(result); }
protected override void OnEndClose(IAsyncResult result) { innerChannelFactory.EndClose(result); }
public void EndClose(IAsyncResult result) { _innerChannelFactory.EndClose(result); }