C#基础之 --- 消息队列例子
来源:互联网 发布:怎么报网络教育 编辑:程序博客网 时间:2024/05/13 15:50
本机上创建一个消息队列:
namespace XXX.XXX.MSMQBuilder{ class Program { static void Main(string[] args) { MessageQueue mq = null; //显示创建自身的消息队列 const string queueName = @".\Private$\jiyiqin"; if (!MessageQueue.Exists(queueName)) { mq = System.Messaging.MessageQueue.Create(queueName); Console.WriteLine("创建消息队列完成:" + queueName); } else { mq = new System.Messaging.MessageQueue(queueName); } mq.SetPermissions("Administrator", MessageQueueAccessRights.FullControl); mq.SetPermissions("ANONYMOUS LOGON", MessageQueueAccessRights.FullControl); mq.SetPermissions("Everyone", MessageQueueAccessRights.FullControl); } }}
向远端机器的消息队列发送消息:
namespace SimMesssageSender{ class Program { static void Main(string[] args) { const string queueName = @"FormatName:Direct=TCP:192.168.1.100\Private$\jiyiqin"; AsyncMessage message = new AsyncMessage { MessageBody = "测试消息,内容包含超链接 http://xxx.xxx.com/bbs/ ,点击跳转" }; try { //将异步消息发往指定的消息队列 using (MessageQueue msmq = new MessageQueue(queueName)) { msmq.Formatter = new XmlMessageFormatter(new Type[] { typeof(AsyncMessage) }); System.Messaging.Message msg = new Message() { Label = "业务模块异步消息", Body = message }; msmq.Send(msg); } } catch (Exception ee) { Console.WriteLine(String.Format("消息发送失败,原因是:{0}", ee.Message)); } Console.WriteLine("发送完成,按任意键退出..."); Console.ReadKey(); } }}
轮训本机上指定消息队列的消息:
static void ReceiveMsg() { const string queueName = @".\Private$\jiyiqin";// @"FormatName:Direct=TCP:192.168.1.104\Private$\jiyiqin"; while (true) { MessageQueue MQ = new MessageQueue(queueName); System.Messaging.Message message = null; try { message = MQ.Receive(TimeSpan.FromSeconds(3)); } catch (Exception ee) { message = null; Console.WriteLine("从消息队列轮训消息出现异常,原因是:" + ee.Message); //continue; } if (message != null) { message.Formatter = new XmlMessageFormatter(new Type[] { typeof(AsyncMessage) }); AsyncMessage msg = (AsyncMessage)message.Body; Console.WriteLine("轮训线程接收到一个异步消息: UserID is " + msg.UserID); } } }
0 0
- C#基础之 --- 消息队列例子
- C# Redis消息队列例子
- C#之消息队列之自学笔记
- linux 消息队列例子
- C#之消息队列的简要说明
- C#之消息队列的简要说明
- C#进程同步之消息队列
- 分布式系统基础-消息队列之JMS
- 分布式系统基础-消息队列之ActiveMQ
- 分布式系统基础-消息队列之RabbitMQ
- 分布式系统基础-消息队列之Kafka
- C#队列例子
- C#消息队列应用程序
- C#消息队列-1
- C#操作消息队列
- C#操作消息队列
- C#操作消息队列
- C#消息队列专题
- android:state_activated可以解决焦点问题
- 导致电脑网速变慢的几个方面
- perl 脚本解析sqlserver导出的sql语句为C#所用
- 苹果和虫子:思考的完整性
- 给中国学生的第六封信——选择的智慧
- C#基础之 --- 消息队列例子
- 解密打车软件大战,其实是玩这种逻辑
- iOS从入门到精通之 :协议(protocol)
- 给中国学生的第七封信:21世纪最需要的7种人才
- spring学习笔记5——AOP的应用
- 如何修改 VS2010 的 HelpLibrary(即MSDN)的安装路径
- 【9018p1437】混合牛奶
- 优秀开源项目的svn地址
- 纯js实现五子棋