You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							103 lines
						
					
					
						
							3.9 KiB
						
					
					
				
			
		
		
	
	
							103 lines
						
					
					
						
							3.9 KiB
						
					
					
				'\" t
 | 
						|
.\"     Title: zmq_inproc
 | 
						|
.\"    Author: [see the "AUTHORS" section]
 | 
						|
.\" Generator: DocBook XSL Stylesheets v1.78.1 <http://docbook.sf.net/>
 | 
						|
.\"      Date: 09/14/2016
 | 
						|
.\"    Manual: 0MQ Manual
 | 
						|
.\"    Source: 0MQ 4.1.5
 | 
						|
.\"  Language: English
 | 
						|
.\"
 | 
						|
.TH "ZMQ_INPROC" "7" "09/14/2016" "0MQ 4\&.1\&.5" "0MQ Manual"
 | 
						|
.\" -----------------------------------------------------------------
 | 
						|
.\" * Define some portability stuff
 | 
						|
.\" -----------------------------------------------------------------
 | 
						|
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
						|
.\" http://bugs.debian.org/507673
 | 
						|
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
 | 
						|
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
						|
.ie \n(.g .ds Aq \(aq
 | 
						|
.el       .ds Aq '
 | 
						|
.\" -----------------------------------------------------------------
 | 
						|
.\" * set default formatting
 | 
						|
.\" -----------------------------------------------------------------
 | 
						|
.\" disable hyphenation
 | 
						|
.nh
 | 
						|
.\" disable justification (adjust text to left margin only)
 | 
						|
.ad l
 | 
						|
.\" -----------------------------------------------------------------
 | 
						|
.\" * MAIN CONTENT STARTS HERE *
 | 
						|
.\" -----------------------------------------------------------------
 | 
						|
.SH "NAME"
 | 
						|
zmq_inproc \- 0MQ local in\-process (inter\-thread) communication transport
 | 
						|
.SH "SYNOPSIS"
 | 
						|
.sp
 | 
						|
The in\-process transport passes messages via memory directly between threads sharing a single 0MQ \fIcontext\fR\&.
 | 
						|
.if n \{\
 | 
						|
.sp
 | 
						|
.\}
 | 
						|
.RS 4
 | 
						|
.it 1 an-trap
 | 
						|
.nr an-no-space-flag 1
 | 
						|
.nr an-break-flag 1
 | 
						|
.br
 | 
						|
.ps +1
 | 
						|
\fBNote\fR
 | 
						|
.ps -1
 | 
						|
.br
 | 
						|
.sp
 | 
						|
No I/O threads are involved in passing messages using the \fIinproc\fR transport\&. Therefore, if you are using a 0MQ \fIcontext\fR for in\-process messaging only you can initialise the \fIcontext\fR with zero I/O threads\&. See \fBzmq_init\fR(3) for details\&.
 | 
						|
.sp .5v
 | 
						|
.RE
 | 
						|
.SH "ADDRESSING"
 | 
						|
.sp
 | 
						|
A 0MQ endpoint is a string consisting of a \fItransport\fR:// followed by an \fIaddress\fR\&. The \fItransport\fR specifies the underlying protocol to use\&. The \fIaddress\fR specifies the transport\-specific address to connect to\&.
 | 
						|
.sp
 | 
						|
For the in\-process transport, the transport is inproc, and the meaning of the \fIaddress\fR part is defined below\&.
 | 
						|
.SS "Assigning a local address to a socket"
 | 
						|
.sp
 | 
						|
When assigning a local address to a \fIsocket\fR using \fIzmq_bind()\fR with the \fIinproc\fR transport, the \fIendpoint\fR shall be interpreted as an arbitrary string identifying the \fIname\fR to create\&. The \fIname\fR must be unique within the 0MQ \fIcontext\fR associated with the \fIsocket\fR and may be up to 256 characters in length\&. No other restrictions are placed on the format of the \fIname\fR\&.
 | 
						|
.SS "Connecting a socket"
 | 
						|
.sp
 | 
						|
When connecting a \fIsocket\fR to a peer address using \fIzmq_connect()\fR with the \fIinproc\fR transport, the \fIendpoint\fR shall be interpreted as an arbitrary string identifying the \fIname\fR to connect to\&. The \fIname\fR must have been previously created by assigning it to at least one \fIsocket\fR within the same 0MQ \fIcontext\fR as the \fIsocket\fR being connected\&.
 | 
						|
.SH "EXAMPLES"
 | 
						|
.PP
 | 
						|
\fBAssigning a local address to a socket\fR. 
 | 
						|
.sp
 | 
						|
.if n \{\
 | 
						|
.RS 4
 | 
						|
.\}
 | 
						|
.nf
 | 
						|
//  Assign the in\-process name "#1"
 | 
						|
rc = zmq_bind(socket, "inproc://#1");
 | 
						|
assert (rc == 0);
 | 
						|
//  Assign the in\-process name "my\-endpoint"
 | 
						|
rc = zmq_bind(socket, "inproc://my\-endpoint");
 | 
						|
assert (rc == 0);
 | 
						|
.fi
 | 
						|
.if n \{\
 | 
						|
.RE
 | 
						|
.\}
 | 
						|
.PP
 | 
						|
\fBConnecting a socket\fR. 
 | 
						|
.sp
 | 
						|
.if n \{\
 | 
						|
.RS 4
 | 
						|
.\}
 | 
						|
.nf
 | 
						|
//  Connect to the in\-process name "#1"
 | 
						|
rc = zmq_connect(socket, "inproc://#1");
 | 
						|
assert (rc == 0);
 | 
						|
//  Connect to the in\-process name "my\-endpoint"
 | 
						|
rc = zmq_connect(socket, "inproc://my\-endpoint");
 | 
						|
assert (rc == 0);
 | 
						|
.fi
 | 
						|
.if n \{\
 | 
						|
.RE
 | 
						|
.\}
 | 
						|
.sp
 | 
						|
.SH "SEE ALSO"
 | 
						|
.sp
 | 
						|
\fBzmq_bind\fR(3) \fBzmq_connect\fR(3) \fBzmq_ipc\fR(7) \fBzmq_tcp\fR(7) \fBzmq_pgm\fR(7) \fBzmq\fR(7)
 | 
						|
.SH "AUTHORS"
 | 
						|
.sp
 | 
						|
This page was written by the 0MQ community\&. To make a change please read the 0MQ Contribution Policy at \m[blue]\fBhttp://www\&.zeromq\&.org/docs:contributing\fR\m[]\&.
 | 
						|
 |