欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

windows下进程间通信的(13种方法)-摘 要 本文讨论了进程间通信与应用程序间通信的含义及相应的实现技术,并对这些技术的原理、特性等进行了深入的分析和比较。 ---- 关键词 信号 管道 消息队列 共享存储段 信号灯 远程过程调用 Socket套接字 MQSeries 1 引言 ---- 进程间通信的主要目的是实现同一计算机系统内部的相互协作的进程之间的数据共享与信息交换,由于这些进程处于同一软件和硬件环境下,利用操作系统提供的的编程接口,用户可以方便地在程序中实现这种通信;应用程序间通信的主要目的是实现不同计算机系统中的相互协作的应用程序之间的数据共享与信息交换,由于应用程序分别运行在不同计算机系统中,它们之间要通过网络之间的协议才能实现数据共享与信息交换。进程间通信和应用程序间通信及相应的实现技术有许多相同之处,也各有自己的特色。即使是同一类型的通信也有多种的实现方法,以适应不同情况的需要。 ---- 为了充分认识和掌握这两种通信及相应的实现技术,本文将就以下几

最编程 2024-03-01 12:50:50
...
表1清楚地列出了RPC、 Socket编程、MQSeries的不同特性。

 

比较项目 Socket编程 RPC MQSeries
属性 会话 远程调用 消息队列
类型 会话 调用/返回 队列
编程接口 非阻塞 阻塞 非阻塞
通信对方运行
应用程序类型 面向连接 面向连接 无连接
数据流模式 点-点,客户机/服务器 客户机/服务器 所有模式
逻辑路由
永久数据

 

表1 三种中间件的特性比较

4 结束语

---- 各种进程间通信和应用程序间通信的实现技术都具有自己的特点和使用范围。管道、消息队列、共享内存等技术最适用于同一计算机系统内部的进程间通信,以保证高效率。而远程过程调用、Socket会话编程、MQSeries则最适用于远程的应用程序之间通信,可以简化通信的编程,当然也保证通信的可靠性。尤其是MQSeries,它是一个比较完善的中间件产品,为许多的信息系统所选用。如我公司的帐务系统与各金融系统的话费信息的交换选择的就是MQSeries。有时,在一个信息系统里面,既存在进程间通信的需求,也存在应用程序间通信的需求,这时就必须分别选择两种不同的实现技术。因此,在实际信息系统建设的过程中,我们在选择哪种实现技术时,应根据信息系统的不同情况和不同需求,根据系统开发和维护的成本,选择一种或是几种实现技术,以求得整个系统的优化。

推荐阅读