public IncomingMessagesStream(IQueueReader[] readers)
 {
     //check if there are any readers that can be used
     if (readers == null) throw new ArgumentNullException("Readers expected");
     _readers = readers.Where(x => x != null).ToArray();
     if (_readers.Length == 0) throw new ArgumentNullException("Readers expected");
 }