进程间通讯有多少种方法呢? RPC 通讯优点在哪里呢?

解决方案 »

  1.   

    方法很多呀,有的网站上写的是11种。共享内存,全局变量,剪切板,socket,命名管道,邮槽,消息等等。楼主可以搜下呀。网上好多这个。
      

  2.   

    http://bbs.chinaunix.net/viewthread.php?tid=1005656
      

  3.   

    RPC主要用于分布式过程调用,虽然也能做到进程间调用。如果调用发生在本机的不同进程,RPC实际使用的是LPC机制(本地过程调用)。这两种机制主要用于COM。通过COM执行跨进程的调用是最透明最方便的,就像在进程内调用COM接口一样,你唯一要准备的事情就是调用CoInitialize。
    消息也是一种比较简单的通信方式,问题在于消息能传递的参数有限制(2个DWORD),尤其是自定义消息,对于复杂数据就比较难传递了,而COM的列集机制能帮你解决参数问题。
    其它方式都要做一定的初始化和清理工作。
      

  4.   


    其实, 我们程序之间的通信, 系统一般都是用LPC 实现的, 因为系统最清楚 两个进程时间的关系
      

  5.   

    pipe也是一种哦,老的还有DDE,方便的还有socket。