博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
简单的同步MSMQ
阅读量:4922 次
发布时间:2019-06-11

本文共 3222 字,大约阅读时间需要 10 分钟。

# 简单的同步MSMQ```cs    using System;    using System.Messaging;    using System.Windows.Forms;        namespace MSMQExample    {        ///        /// 一个简单的MSMQ例子,目前只是同步操作。        ///        public partial class Form1 : Form        {                private string queuestring = @".\Private$\MyQueue";            private int times = 0;                public Form1()            {                InitializeComponent();            }                private void Form1_Load(object sender, EventArgs e)            {                }                ///            ///            ///            ///            private void btn_create_Click(object sender, EventArgs e)            {                try                {                    if (!MessageQueue.Exists(queuestring))                    {                        MessageQueue.Create(queuestring);                    }                    MessageQueue queue = new MessageQueue(queuestring);                    lbl_msg1.Text = string.Format("path={0}\nformat={1}", queue.Path, queue.FormatName);                }                catch (MessageQueueException ex)                {                    lbl_msg1.Text = ex.Message;                }            }                ///             ///             private void btn_rec_Click(object sender, EventArgs e)            {                try                {                    MessageQueue queue = new MessageQueue(queuestring);                    queue.Formatter = new BinaryMessageFormatter();                    int count = 0;                    foreach (System.Messaging.Message message in queue)                    {                        count++;                        break;                    }                    if (count > 0)                    {                        System.Messaging.Message message = queue.Receive();                        byte[] buffer = (byte[])message.Body;                        lbl_msg2.Text = System.Text.Encoding.UTF8.GetString(buffer);                    }                    else                        lbl_msg2.Text = "没有消息!";                }                catch (Exception ex)                {                    lbl_msg2.Text = ex.Message;                }            }                ///             ///             private void btn_send_Click(object sender, EventArgs e)            {                try                {                    string mss = DateTime.Now.ToString("当前时间:yyyy-MM-dd HH:mm:ss.fff。");                    MessageQueue queue = new MessageQueue(queuestring);                    byte[] msg = System.Text.Encoding.UTF8.GetBytes(mss);                    System.Messaging.Message Msg = new System.Messaging.Message(msg, new BinaryMessageFormatter());                    Msg.AcknowledgeType = AcknowledgeTypes.PositiveReceive | AcknowledgeTypes.PositiveArrival;                    Msg.Label = "消息" + times;                    queue.Send(Msg);                    queue.Close();                    lbl_msg3.Text = "已发送!";                    times++;                }                catch (Exception ex)                {                    lbl_msg3.Text = ex.Message;                }            }        }    }```

转载于:https://www.cnblogs.com/changweihua/p/3334083.html

你可能感兴趣的文章
JSONObject与JSONArray的使用
查看>>
Android应用开发-小巫CSDN博客clientJsoup篇
查看>>
Junit使用教程(一)
查看>>
Java Utils工具类大全
查看>>
ASP.NET MVC 中IBaseDal接口的封装
查看>>
【博主的微博】
查看>>
微擎性能优化设置
查看>>
命令 上传项目到git中
查看>>
Android 自定义View
查看>>
electron-searchMovies
查看>>
解题报告:hdu 2073 无限的路
查看>>
让TextBlock文字变化的动画
查看>>
L1-005 考试座位号
查看>>
js进阶 10-1 JQuery是什么
查看>>
什么是字体锯齿和反锯齿
查看>>
棋子翻转
查看>>
零售企业如何把成本控制在最低以提高利润?
查看>>
python3之登陆
查看>>
LightOJ 1027 A Dangerous Maze(期望)题解
查看>>
relative 和 absolute 定位关系
查看>>