1. 程式人生 > >JAVA程序間的通訊方式(IPC)

JAVA程序間的通訊方式(IPC)

JAVA程序間通訊的方法主要有以下幾種:
  (1)管道(Pipe):管道可用於具有親緣關係程序間的通訊,允許一個程序和另一個與它有共同祖先的程序之間進行通訊。
  (2)命名管道(named pipe):命名管道克服了管道沒有名字的限制,除具有管道所具有的功能外,它還允許無親緣關係程序間的通訊。
  (3)訊號(Signal):訊號是比較複雜的通訊方式,用於通知接受程序有某種事件發生,除了用於程序間通訊外,程序還可以傳送 訊號給程序本身。
  (4)訊息(Message)佇列:訊息佇列是訊息的連結表,包括Posix訊息佇列system V訊息佇列。
  (5)共享記憶體:使得多個程序可以訪問同一塊記憶體空間,是最快的可用IPC形式。是針對其他通訊機制執行效率較低而設計的。

  (6)記憶體對映(mapped memory):記憶體對映允許任何多個程序間通訊,每一個使用該機制的程序通過把一個共享的檔案對映到自己的程序地址空間來實現它。
  (7)訊號量(semaphore):主要作為程序間以及同一程序不同執行緒之間的同步手段。
  (8)套介面(Socket):更為一般的程序間通訊機制,可用於不同機器之間的程序間通訊。