用C# 写一个消息队列
时间: 2023-11-23 07:56:56 浏览: 11
在C#中,可以使用System.Messaging命名空间来创建和管理消息队列。以下是一个简单的消息队列示例:
1. 首先,需要添加System.Messaging引用:
```
using System.Messaging;
```
2. 创建一个消息队列:
```
MessageQueue messageQueue = null;
if (MessageQueue.Exists(@".\Private$\MyQueue"))
{
messageQueue = new MessageQueue(@".\Private$\MyQueue");
}
else
{
messageQueue = MessageQueue.Create(@".\Private$\MyQueue");
}
```
3. 发送消息到队列:
```
Message message = new Message();
message.Body = "Hello World!";
messageQueue.Send(message);
```
4. 从队列中接收消息:
```
Message message = messageQueue.Receive();
Console.WriteLine("Received message: " + message.Body.ToString());
```
5. 关闭消息队列:
```
messageQueue.Close();
```
完整的代码示例:
```
using System;
using System.Messaging;
namespace MessageQueueExample
{
class Program
{
static void Main(string[] args)
{
MessageQueue messageQueue = null;
if (MessageQueue.Exists(@".\Private$\MyQueue"))
{
messageQueue = new MessageQueue(@".\Private$\MyQueue");
}
else
{
messageQueue = MessageQueue.Create(@".\Private$\MyQueue");
}
Message message = new Message();
message.Body = "Hello World!";
messageQueue.Send(message);
Message receivedMessage = messageQueue.Receive();
Console.WriteLine("Received message: " + receivedMessage.Body.ToString());
messageQueue.Close();
Console.ReadLine();
}
}
}
```