zoukankan      html  css  js  c++  java
  • JAVA进程间通信

            之前被一个一直用C/C++的朋友问JAVA是怎么实现进程间通信的,一时语塞。第一反应是多线程的东西,可以传递共享变量之类,然而多进程的还真没有考虑过。

            初步想来,使用在不同机器上的进程通信一般就是RMI、PRC和Web Service之类,也就是底层基于Socket的通信方式。上网查了一下,传统的进程间通信的方式有大致如下几种:

    (1)   管道(PIPE)
    (2)   命名管道(FIFO)
    (3)   信号灯(Semphore)
    (4)   消息队列(MessageQueue)
    (5)   共享内存(SharedMemory)
    (6)   Socket

            由于上面几种通信方式,除了Socket之外,大都是需要靠系统调用来实现的,因此基于JAVA虚拟机运行的JAVA进程貌似都不太好用。说道共享内存,这里查到了一篇关于JAVA NIO 的内存映射文件(MappedByteBuffer)的文章,来自javaeye:Java NIO应用

            牢骚一句,感觉javaeye博客上的代码比cnblogs上的要好看很多。。。希望博客园改进啊~

  • 相关阅读:
    94. Binary Tree Inorder Traversal
    101. Symmetric Tree
    38. Count and Say
    28. Implement strStr()
    实训团队心得(1)
    探索性测试入门
    LC.278. First Bad Version
    Search in Unknown Sized Sorted Array
    LC.88. Merge Sorted Array
    LC.283.Move Zeroes
  • 原文地址:https://www.cnblogs.com/funnydavid/p/1875482.html
Copyright © 2011-2022 走看看