Наследование: Microsoft.AspNet.SignalR.Hub
        protected override void ExecuteSteps(QueueMessageManager manager)
        {
            // show a started message
            Stopwatch watch = new Stopwatch();

            watch.Start();

            // store on a thread
            LocalDataStoreSlot threadData = Thread.GetNamedDataSlot(STR_STARTTIME_KEY);

            Thread.SetData(threadData, watch);

            QueueMonitorServiceHub.WriteMessage(manager.Item);

            base.ExecuteSteps(manager);
        }
 /// <summary>
 /// Writes out a message to the SignalR hub
 /// </summary>
 /// <param name="queueItem"></param>
 /// <param name="elapsed"></param>
 /// <param name="waiting"></param>
 public virtual void WriteMessage(QueueMessageItem queueItem, int elapsed = 0, int waiting = -1)
 {
     // forward to SignalR Hub broadcast
     QueueMonitorServiceHub.WriteMessage(queueItem, elapsed, waiting);
 }
 /// <summary>
 /// Writes out a message to the SignalR hub
 /// </summary>
 /// <param name="message"></param>
 public virtual void WriteMessage(string message)
 {
     // forward to SignalR Hub broadcast
     QueueMonitorServiceHub.WriteMessage(message);
 }