Пример #1
0
 public static void LogError(string log)
 {
     if (Loger != null)
     {
         Loger.LogError(log);
     }
 }
Пример #2
0
        /// <summary>
        ///
        /// </summary>
        private void QueueToWrite()
        {
            while (true)
            {
                StrongBox <QueueMessage> item = _queue.Take();
                Console.WriteLine(Thread.CurrentThread.ManagedThreadId);
                QueueMessage qm = item.Value;
                item.Value = null;

                if (!BasicEnqueue(qm.exchangeName, qm.queueName, qm.data, qm.persistent, qm.durableQueue, qm.exchangeType))
                {
                    loger.LogError(new Exception(), qm);
                }

                qm   = null;
                item = null;
            }
        }
Пример #3
0
 public void LogError(string content)
 {
     m_Logger.LogError(content);
 }
        /// <summary>
        ///
        /// </summary>
        private void QueueToWrite()
        {
            //foreach (StrongBox<QueueMessage> item in _queue.GetConsumingEnumerable())
            //{
            //    QueueMessage qm = item.Value;
            //    if (!BasicEnqueue(qm.exchangeName, qm.queueName, qm.data, qm.persistent, qm.durableQueue, qm.exchangeType))
            //    {
            //        loger.LogError(new Exception(), qm);
            //    }

            //    qm = null;
            //    item.Value = null;
            //    //GC.Collect();
            //}

            while (true)
            {
                StrongBox <QueueMessage> item = _queue.Take();
                //Console.WriteLine(Thread.CurrentThread.ManagedThreadId);
                QueueMessage qm = item.Value;
                item.Value = null;

                if (!BasicEnqueue(qm.exchangeName, qm.queueName, qm.data, qm.persistent, qm.durableQueue, qm.exchangeType))
                {
                    loger.LogError(new Exception(), qm);
                }

                qm   = null;
                item = null;
            }

            //while (true)
            //{
            //    resetEvent.Reset();
            //    if (_queue.Count > 0)
            //    {
            //        isQueueToWrite = true;
            //        QueueMessage qm = null;
            //        do
            //        {
            //            lock (_queue)
            //            {
            //                try
            //                {
            //                    qm = (QueueMessage)_queue.Dequeue();
            //                }
            //                catch { }
            //            }
            //            if (qm != null)
            //            {
            //                if (!BasicEnqueue(qm.exchangeName, qm.queueName, qm.data, qm.persistent, qm.durableQueue, qm.exchangeType))
            //                {
            //                    lock (_queue)
            //                    {
            //                        _queue.Enqueue(qm);
            //                    }
            //                }
            //                else
            //                {
            //                    break;
            //                }
            //            }

            //            //SpinWait.SpinUntil(() => false, 1);
            //        } while (qm != null);

            //        //while (_queue.Dequeue(out qm))
            //        //{
            //        //    if (!BasicEnqueue(qm.exchangeName, qm.queueName, qm.data, qm.persistent, qm.durableQueue, qm.exchangeType))
            //        //    {
            //        //        _queue.Enqueue(qm);
            //        //    }
            //        //    else
            //        //    {
            //        //        break;
            //        //    }
            //        //    SpinWait.SpinUntil(() => false, 1);
            //        //}
            //        qm = null;
            //        isQueueToWrite = false;
            //    }

            //    resetEvent.WaitOne(waitMillisecondsTimeout);
            //    //SpinWait.SpinUntil(() => false, waitMillisecondsTimeout);
            //    //Thread.Sleep(waitMillisecondsTimeout);
            //}
        }