MSMQ Helper 类(未整理完成)

 

 

MSMQ 配置点:

 

 

 

 

 

private void button1_Click(object sender, EventArgs e)
        {
            System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch();
            stopwatch.Start(); //开始计时
            SendMessage();
            stopwatch.Stop();  //停止计时
            long a = stopwatch.ElapsedTicks;
            MessageBox.Show(a.ToString());
        }

        /// <summary>
        /// 发送消息
        /// </summary>
        /// <param name="head">标识码</param>
        /// <param name="json">json数据</param>
        /// <param name="Priority">级别</param>
        public static bool SendMessage()
        {
            bool IsTrue = false;
            try
            {
                string Name = "pcmq";
                string queueName = string.Format("FormatName:Direct=TCP:192.168.133.131\\private$\\{0}", Name);  //连接远程的服务器MSMQ
         //string queueName = string.Format(".\\private$\\{0}", Name);  //连接本地MSMQ

                MessageQueue mq;
                if (queueName.Contains("TCP"))
                {
                    mq = new MessageQueue(queueName);
                }
                else
                {
                    if (MessageQueue.Exists(queueName))
                    {
                        mq = new MessageQueue(queueName);
                        mq.SetPermissions("Everyone", MessageQueueAccessRights.FullControl);
                    }
                    else
                    {
                        mq = MessageQueue.Create(queueName);
                        mq.SetPermissions("Everyone", MessageQueueAccessRights.FullControl);
                    }
                }
                for (int i = 0; i < 10000; i++)
                {
                    mq.Send("测试数据");
                }
               

            }
            catch (Exception ex)
            {
                
            }
            return IsTrue;
        }

        private void button2_Click(object sender, EventArgs e)
        {
            string Name = "pcmq";
            string queueName = string.Format("FormatName:Direct=TCP:192.168.133.131\\private$\\{0}", Name);

            MessageQueue mq;
            if (queueName.Contains("TCP"))
            {
                mq = new MessageQueue(queueName);
            }
            else
            {
                if (MessageQueue.Exists(queueName))
                {
                    mq = new MessageQueue(queueName);
                    mq.SetPermissions("Everyone", MessageQueueAccessRights.FullControl);
                }
                else
                {
                    mq = MessageQueue.Create(queueName);
                    mq.SetPermissions("Everyone", MessageQueueAccessRights.FullControl);
                }
            }

            System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch();
            stopwatch.Start();
            for (int i = 0; i < 10000; i++)
            {
                System.Messaging.Message ms = mq.Receive();
            }
            stopwatch.Stop();
            long a = stopwatch.ElapsedTicks;
            MessageBox.Show(a.ToString());
        }

 

posted on 2016-03-05 23:10  忙碌ing  阅读(512)  评论(0)    收藏  举报

导航