示例#1
0
        /// <summary>
        /// 消费者 IO 线程同步实时处理数据
        /// </summary>
        private void synchronousStream()
        {
            enqueue();

            start(CallbackType.SynchronousStream, TestType.MessageQueueDequeue);
            using (AutoCSer.CacheServer.MessageQueue.Abstract.Consumer consumer = queue.CreateConsumerStream(onMessage, getConfig()))
            {
                wait();
            }
            client.RemoveDataStructure(cacheName);
        }
示例#2
0
 /// <summary>
 /// 消费者 IO 线程同步实时处理数据(生产消费实时并行测试)
 /// </summary>
 private void synchronousStreamMixing()
 {
     client.RemoveDataStructure(cacheName);
     queue        = client.GetOrCreateDataStructure <QueueConsumer <Binary <Message> > >(cacheName);
     messageIndex = errorCount = 0;
     start(CallbackType.SynchronousStream, TestType.MessageQueueMixing, 2);
     using (AutoCSer.CacheServer.MessageQueue.Abstract.Consumer consumer = queue.CreateConsumerStream(onMessageInterlocked, getConfig()))
     {
         for (int index = 0; index != count; ++index)
         {
             queue.EnqueueStream(new Message {
                 Value = index
             }, enqueueCallbackInterlockedReturnParameter);
         }
         wait();
     }
     client.RemoveDataStructure(cacheName);
 }