`
leonardleonard
  • 浏览: 821639 次
社区版块
存档分类
最新评论

C#操作消息队列

阅读更多
public class QueueManage
{
///
/// 发送对象到队列中
///
/// 队列名称,因为队列名称在一个应用中应该不改变的,所以大家最好写在配置文件中
/// 要发出去的对象
public static void SendQueue(string QueuePath,MyBase.SmsQueue sq)
{
System.Messaging.MessageQueue mqSend=new System.Messaging.MessageQueue(QueuePath,false);
EnsureQueueExists(QueuePath);
mqSend.Send(sq);
}


///
/// 检查队列,如果队列不存在,则建立
///
/// 队列名称
private static void EnsureQueueExists(string path)
{
if(!MessageQueue.Exists(path))
{
if(!MessageQueue.Exists(path))
{
MessageQueue.Create(path);
MessageQueue mqTemp=new MessageQueue(path);
mqTemp.SetPermissions("Everyone",System.Messaging.MessageQueueAccessRights.FullControl);
///不知道该给什么样的权限好,所以就给了Everone全部权限了,当然大家最好自己控制一下
}
}
}


///
/// 从队列中取出对象列表
///
/// 队列名称
public static System.Collections.ArrayList GetMessage(string QueuePath)
{
MyBase.SmsQueue sq=new MyBase.SmsQueue();
System.Messaging.MessageQueue mq=new System.Messaging.MessageQueue(QueuePath,false);
mq.Formatter=new XmlMessageFormatter(new Type[] {typeof(MyBase.SmsQueue)});
System.Messaging.Message[] arrM=mq.GetAllMessages();
mq.Close();
System.Collections.ArrayList al=new System.Collections.ArrayList();
foreach(System.Messaging.Message m in arrM)
{
sq=(TimeFound.SmsGate.Base.SmsQueue)m.Body;
al.Add(sq);
}

return al;

}


 
分享到:
评论

相关推荐

    C#消息队列发送及接收

    本文将深入探讨C#中如何使用MSMQ进行消息队列的操作,并通过示例代码来展示具体实现。 首先,我们需要理解消息队列的基本概念。消息队列允许应用程序之间通过异步消息传递进行通信,而不必同时在线。发送方将消息放...

    C#MSMQ 消息队列工具

    提供的“C#MSMQ 消息队列工具”可能是一个简单的示例应用,用于演示如何使用C#操作MSMQ。它可能包含发送、接收消息的功能,以及队列管理的基本操作。通过分析和学习这个工具,开发者可以更好地理解和实践MSMQ在实际...

    C#消息队列含源码开源框架

    5. **C#案例**:这可能是一些C#代码示例,展示如何使用提供的框架或库来操作消息队列,如创建生产者、消费者,发送和接收消息等。 综合以上信息,我们可以推断这个开源框架可能是为C#开发者设计的,用于简化与...

    c#开发消息队列指导

    在C#中开发消息队列是构建可扩展和高可用性系统的重要技术。...总的来说,C#开发MSMQ涉及环境配置、队列路径、消息格式和实际操作等多个方面,理解并熟练运用这些知识点,可以帮助开发者构建可靠且高效的分布式系统。

    C# winform可忽略消息的自定义消息队列

    总之,通过创建自定义消息队列,并结合异步处理,我们可以显著提升C# WinForm应用的性能和用户体验,尤其在处理大量控件事件和耗时操作时。正确地设计和实施这个机制,能帮助开发者构建出更加健壮、高效的软件。

    c#消息队列案例

    在这个"C#消息队列案例"中,我们将探讨三个核心概念:消息队列(Message Queues, MQ)、Autofac接口注入以及Aspose.Word进行PDF相关操作。 首先,让我们深入了解消息队列。消息队列是一种异步通信机制,允许不同...

    C# 实现消息的收发IBM WebSphere MQ 消息队列

    在C#中,我们可以使用IBM提供的`WebSphere MQ .NET`客户端库来与消息队列进行交互。这个库提供了对MQ的所有必需功能,包括打开、关闭、发送和接收消息。 **三、配置步骤** 1. **安装IBM WebSphere MQ .NET客户端**...

    C# 消息队列.zip

    在“C# 消息队列.zip”压缩包中,可能包含了示例代码,演示了如何创建消息、如何使用MessageQueue类进行读写操作,以及如何在多线程环境中运行这些操作。学习这个案例将有助于你理解如何在实际项目中运用消息队列和...

    C#-消息队列-聊天室-iis程序

    开发者可以通过MessageQueue类来操作MSMQ(Microsoft Message Queuing),这是一个内置的消息队列服务。 在这个项目中,Queue_Service.exe很可能是消息队列服务端,负责接收和处理客户端发送的消息。而Queue_Client...

    C#实现进程间通信(使用消息队列实现)

    在C#中,我们可以使用System.Messaging命名空间中的MessageQueue类来操作消息队列。以下是一些关键概念和步骤: 1. **创建消息队列**:首先,我们需要创建一个消息队列。这可以通过MessageQueue.Create方法完成,...

    C#进程间通信-消息队列代码实例

    在Windows操作系统中,消息队列(Message Queuing, MSMQ)是一种常见的IPC机制,尤其适用于那些需要异步、可靠通信的应用场景。本实例以C#语言为基础,详细讲解如何利用消息队列进行进程间通信。 首先,我们需要...

    C#,windows 消息队列收发实例

    本实例聚焦于使用C#语言和Windows操作系统中的消息队列(Message Queuing,简称MSMQ)进行数据传输。Windows消息队列提供了一种可靠且异步的消息传递机制,允许应用程序在不同的时间点发送和接收消息。 **C#与...

    消息队列发送消息的C#代码实现

    在C#编程环境中,我们可以使用.NET框架提供的System.Messaging命名空间来操作消息队列。本文将详细讲解如何使用C#实现消息队列发送消息,并探讨相关的技术细节。 首先,我们需要了解消息队列的基本概念。消息队列...

    C#队列Queue多线程用法实例

    但在实际应用中,如果多个线程可能同时操作队列,就需要添加同步机制以避免数据竞争和不一致。 此外,为了保证程序的正常退出,我们把新线程设置为后台线程(`th.IsBackground = true`)。这样,当主线程结束时,...

    C#任务队列的实现

    - 在多线程环境下,对任务队列的操作(添加任务和获取任务)必须是线程安全的,避免数据竞争和不一致的状态。C#中的`System.Threading`命名空间提供了许多工具来实现线程同步,如`Monitor`, `Mutex`, `Semaphore`, ...

    C#使用队列(Queue)解决简单的并发问题

    在本文中,我们将深入探讨如何使用C#中的队列数据结构(Queue)来解决简单的并发问题。队列是一种线性数据结构,遵循先进先出(FIFO)的原则,即第一个进入的元素也将是第一个离开的元素。这种特性使得队列在处理...

    win消息队列timer

    在Windows操作系统中,消息队列Timer是用于调度定时任务的关键机制。它允许程序在特定时间间隔后执行某个操作,而无需持续轮询或阻塞主线程。这种机制在服务器程序中尤其有用,因为它可以帮助优化资源利用率,提高...

    C# 实现消息的收发IBM WebSphere MQ 队列

    IBM WebSphere MQ(以前称为WebSphere Message Broker)是此类系统的一个杰出代表,它提供了高可用性、可扩展性和跨平台的消息队列服务。本实例将深入探讨如何使用C#语言来实现与IBM WebSphere MQ的交互,进行消息的...

    windows消息队列基本操作实例

    除了基本操作,MSMQ还支持一些高级特性,例如事务性消息、消息确认、消息优先级、队列权限管理等。事务性消息保证了消息的原子性,即使在发送或接收过程中出现故障,也能保证消息不丢失。消息确认则允许接收方确认已...

    消息队列操作类

    消息队列操作类,本人已经测试过了,可以用的 请放心下载

Global site tag (gtag.js) - Google Analytics