ZeroMQ介面函式之 :zmq_ipc – ZMQ本地程序間通訊傳輸協議
—————————————————————————————————————
zmq_ipc(7) ØMQ Manual - ØMQ/3.2.5
Name
zmq_ipc – ZMQ本地程序間通訊傳輸協議
Synopsis
程序間傳輸採用與系統相關的IPC機制進行本地程序間的訊息通訊。
程序間傳輸方式目前只在提供UNIX定義的socket系統上完全的實現了。
Addressing
一個終結點包括transport://跟著一個address (對於IPC也就是 ipc://address)。transport指定了要使用的底層的系統協議。address指定了需要連線的指定地址。
對於程序間的傳輸,transport指的是ipc,address部分在下面進行定義。
繫結一個socket
當使用zmq_bind()函式以ipc傳輸方式繫結一個本地socket的時候,終結點應該是一個任意字串的檔名,能夠唯一標誌將要建立的檔案。檔名應該是在使用ipc進行操作是,這個作業系統名稱空間中唯一的。這個檔名還必須滿足作業系統對正常檔名在格式和長度上的限制。
當地址是*的時候,zmq_bind()函式會生成一個臨時的檔名。呼叫者需要使用ZMQ_LAST_ENDPOINT屬性獲取此檔名。檢視zmq_getsockopt(3)函式獲取更多細節。
所有繫結在一個已經存在的檔名的動作都會被過載。在這種情況下,ipc協議和tcp或者inproc協議是不一樣的。
連線一個socket
當使用zmq_connect()函式向一個對端發起ipc連線的時候,終結點需要是一個能夠唯一標誌一個檔名的任意字串。這個檔名必須是已經由作業系統建立,並且被分配給了一個通過zmq_bind()操作過的socket。
Examples
給一個socket分配一個地址
// Assign the pathname "/tmp/feeds/0"
rc = zmq_bind(socket, "ipc:///tmp/feeds/0");
assert (rc == 0);
連線一個socket
// Connect to the pathname "/tmp/feeds/0"
rc = zmq_connect(socket, "ipc:///tmp/feeds/0");
assert (rc == 0);
See also
zmq_bind(3) zmq_connect(3) zmq_inproc(7) zmq_tcp(7) zmq_pgm(7) zmq_getsockopt(3) zmq(7)
Authors
This ØMQ manual page was written by Pieter Hintjens <[email protected]>, Martin Sustrik <[email protected]> and Martin Lucina <[email protected]>.
Web site design and content is copyright (c) 2007-2012 iMatix Corporation. Contact us for professional support. Site content licensed under the Creative Commons Attribution-Share Alike 3.0 License. ØMQ is copyright (c) Copyright (c) 2007-2012 iMatix Corporation and Contributors. ØMQ is free software licensed under the LGPL. ØMQ, ZeroMQ, and 0MQ are trademarks of iMatix Corporation. Terms of Use — Privacy
Policy
翻譯:風波
mail : [email protected]