zoukankan      html  css  js  c++  java
  • paip.c++ 进程间通信方法大总结

    paip.c++ 进程间通信方法大总结




    作者Attilax ,  EMAIL:1466519819@qq.com 
    来源:attilax的专栏
    地址:http://blog.csdn.net/attilax


    进程间通信方法

    进程间通信主要包括管道, 系统IPC(包括消息队列,信号,共享存储), 套接字(SOCKET).文件交换,注册表,外设,  
    1、剪贴板Clipboard:
    2、窗口消息 标准的Windows消息以及专用的WM_COPYDATA消息 SENDMESSAGE()接收端必须有一个窗口
    3、使用共享内存方式(Shared Memory)
    4、动态数据交换(DDE)通过维护全局分配内存使的应用程序间传递成为可能
     5、消息管道(Message Pipe)
    6、邮件槽(Mailslots)
    8、Internet通信 它让应用程序从Internet地址上载或下载文件
    9、RPC:远程过程调用,很少使用,因其与UNIX的RPC不兼容。
    10、串行/并行通信(Serial/Parallel Communication)
    它允许应用程序通过串行或并行端口与其他的应用程序通信 
    11、COM/DCOM通过COM系统的代理存根方式进行进程间数据交换,但只能够表现在对接口 函数的调用时传送数据,通过DCOM可以在不同主机间传送数据。
     


    管道包括三种:
    3)命名管道:name_pipe, 去除了第二种限制,可以在许多并不相关的进程之间进行通讯.
    1)普通管道PIPE, 通常有两种限制,一是半双工,只能单向传输;二是只能在父子或者兄弟进程间使用. 
    2)流管道s_pipe: 去除了第一种限制,可以双向传输. 




    技术挑型://
    /
    在快速局域网 (LAN) 环境中,传输控制协议或 Internet 协议 (TCP/IP) 套接字客户端和命名管道客户端在性能方面不相上下。但是,网络速度越慢(如在广域网 (WAN) 或拨号网络上),TCP/IP 套接字客户端与命名管道客户端的性能差异越明显。这是因为进程间通讯 (IPC) 机制在对等项间的通讯方法不同。 




     一般情况下,套接字SOCKET在慢速 LAN、WAN 或拨号网络中效果较佳,而当网络速度不成问题时命名管道则是更好的选择,因为其功能更强、易于使用且提供多种配置选项。




    参考:
    命名管道(NamePipe) 与 TCP-IP套接字
    VC++中进程间相互通信的十一种方法 _天极网.htm
  • 相关阅读:
    C#中两数相除为0的原因
    Keil STM32F4xx_DFP.1.0.8.pack下载链接
    LabVIEW入门第九天(数组和簇)
    C#执行文件抛出异常方法
    C#中两数相除为0的原因
    C#判断文件夹路径是否存在并新建
    C#窗体程序随电脑分辨率自动调整大小
    C#判断文件夹路径是否存在并新建
    C#窗体程序随电脑分辨率自动调整大小
    VisualTreeHelper使用之ListBox模板DataTemplate中CheckBox选中项(WP7.1)
  • 原文地址:https://www.cnblogs.com/attilax/p/15199513.html
Copyright © 2011-2022 走看看