private void Run()
        {
            while (true)
            {
                bool stop = _manualResetEvent.WaitOne(0);
                if (stop)
                {
                    break;
                }

                SendOrPostCallbackItem workItem = _queueConsumer.Dequeque();
                workItem?.Execute();
            }
        }