码迷,mamicode.com
首页 > 其他好文 > 详细

MessageQueue 一 简单的创建和读取

时间:2016-04-17 11:41:05      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:

创建一个队列,并写入数据

在读取出来

using System;
using System.Collections.Generic;
using System.Linq;
using System.Messaging;
using System.Text;
using System.Threading.Tasks;

namespace 队列
{
    class Program
    {
        static void Main(string[] args)
        {

            //发送到队列
            //判断是否存在这个队列(如果存在还创建或者不存在就new 这个队列都是会报错的)
            if (!MessageQueue.Exists(".\\Private$\\MQDemo"))
            {
          //在指定的位置创建一个队列
                MessageQueue myNewPrivateQueue =
                MessageQueue.Create(".\\Private$\\TestPQueue");
            }
            MessageQueue MQueue = new MessageQueue(".\\private$\\MQDemo");
            //创建一个消息的实体
            System.Messaging.Message Msg = new System.Messaging.Message();
            //为消息的实体赋值
            Msg.Body = "qqqqqqqqq";
            Msg.Formatter = new System.Messaging.XmlMessageFormatter(new Type[] { typeof(string) });
            //发送到消息队列中
            MQueue.Send(Msg);

            //--------------------------------------------------------

            //从指定的队列中读取数据
            //链接这个队列
            MessageQueue MQueue22 = new MessageQueue(".\\private$\\MQDemo");
            //拿到队列中的第一条数据(弹出数据,弹出后该数据会消失)
            System.Messaging.Message Msg22 = MQueue22.Receive();
            //反序列化该消息
            Msg22.Formatter = new System.Messaging.XmlMessageFormatter(new Type[] { typeof(string) });
            Console.WriteLine(Msg22.Body.ToString());

            ///MessageQueue队列是可以跨进程的所以,上面的代码可以分别放到两个一般处理程序中
            ///一个进行读
            ///一个取
            Console.ReadLine();
        }
    }
}

 

MessageQueue 一 简单的创建和读取

标签:

原文地址:http://www.cnblogs.com/ansheng/p/5400440.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!