public QueuedHandlerPulse(IHandle <Message> consumer, string name, bool watchSlowMsg = true, TimeSpan?slowMsgThreshold = null, TimeSpan?threadStopWaitTimeout = null, string groupName = null) { Ensure.NotNull(consumer, "consumer"); Ensure.NotNull(name, "name"); _consumer = consumer; _watchSlowMsg = watchSlowMsg; _slowMsgThreshold = slowMsgThreshold ?? InMemoryBus.DefaultSlowMessageThreshold; _threadStopWaitTimeout = threadStopWaitTimeout ?? QueuedHandler.DefaultStopWaitTimeout; _queueMonitor = QueueMonitor.Default; _queueStats = new QueueStatsCollector(name, groupName); }