public ChannelMultiplexer(IChannel[] channels, int[] ids, IChannel output, bool autoStart, bool waitOnStop) { int count = channels.Length; if(count != ids.Length) throw new ArgumentException("Channel and ID count mismatch.","ids"); forwarders = new ChannelForwarder[count]; for(int i=0;i<count;i++) forwarders[i] = new ChannelForwarder(channels[i],output,ids[i],autoStart,waitOnStop); SetRunnables((SingleRunnable[])forwarders); }
public ChannelMultiplexer(IChannel[] channels, int[] ids, IChannel output, bool autoStart, bool waitOnStop) { int count = channels.Length; if (count != ids.Length) { throw new ArgumentException("Channel and ID count mismatch.", "ids"); } forwarders = new ChannelForwarder[count]; for (int i = 0; i < count; i++) { forwarders[i] = new ChannelForwarder(channels[i], output, ids[i], autoStart, waitOnStop); } SetRunnables((SingleRunnable[])forwarders); }