mirror of https://gitee.com/bigwinds/arangodb
156 lines
4.3 KiB
Groff
156 lines
4.3 KiB
Groff
'\" t
|
|
.\" Title: zmq_connect
|
|
.\" Author: [see the "AUTHORS" section]
|
|
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
|
|
.\" Date: 04/04/2012
|
|
.\" Manual: 0MQ Manual
|
|
.\" Source: 0MQ 2.2.0
|
|
.\" Language: English
|
|
.\"
|
|
.TH "ZMQ_CONNECT" "3" "04/04/2012" "0MQ 2\&.2\&.0" "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_connect \- connect a socket
|
|
.SH "SYNOPSIS"
|
|
.sp
|
|
\fBint zmq_connect (void \fR\fB\fI*socket\fR\fR\fB, const char \fR\fB\fI*endpoint\fR\fR\fB);\fR
|
|
.SH "DESCRIPTION"
|
|
.sp
|
|
The \fIzmq_connect()\fR function shall connect the socket referenced by the \fIsocket\fR argument to the endpoint specified by the \fIendpoint\fR argument\&.
|
|
.sp
|
|
The \fIendpoint\fR argument is a string consisting of two parts as follows: \fItransport\fR://\fIaddress\fR\&. The \fItransport\fR part specifies the underlying transport protocol to use\&. The meaning of the \fIaddress\fR part is specific to the underlying transport protocol selected\&.
|
|
.sp
|
|
The following transports are defined:
|
|
.PP
|
|
\fIinproc\fR
|
|
.RS 4
|
|
local in\-process (inter\-thread) communication transport, see
|
|
\fBzmq_inproc\fR(7)
|
|
.RE
|
|
.PP
|
|
\fIipc\fR
|
|
.RS 4
|
|
local inter\-process communication transport, see
|
|
\fBzmq_ipc\fR(7)
|
|
.RE
|
|
.PP
|
|
\fItcp\fR
|
|
.RS 4
|
|
unicast transport using TCP, see
|
|
\fBzmq_tcp\fR(7)
|
|
.RE
|
|
.PP
|
|
\fIpgm\fR, \fIepgm\fR
|
|
.RS 4
|
|
reliable multicast transport using PGM, see
|
|
\fBzmq_pgm\fR(7)
|
|
.RE
|
|
.sp
|
|
With the exception of \fIZMQ_PAIR\fR sockets, a single socket may be connected to multiple endpoints using \fIzmq_connect()\fR, while simultaneously accepting incoming connections from multiple endpoints bound to the socket using \fIzmq_bind()\fR\&. Refer to \fBzmq_socket\fR(3) for a description of the exact semantics involved when connecting or binding a socket to multiple endpoints\&.
|
|
.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
|
|
The connection will not be performed immediately but as needed by 0MQ\&. Thus a successful invocation of \fIzmq_connect()\fR does not indicate that a physical connection was or can actually be established\&.
|
|
.sp .5v
|
|
.RE
|
|
.SH "RETURN VALUE"
|
|
.sp
|
|
The \fIzmq_connect()\fR function shall return zero if successful\&. Otherwise it shall return \-1 and set \fIerrno\fR to one of the values defined below\&.
|
|
.SH "ERRORS"
|
|
.PP
|
|
\fBEINVAL\fR
|
|
.RS 4
|
|
The endpoint supplied is invalid\&.
|
|
.RE
|
|
.PP
|
|
\fBEPROTONOSUPPORT\fR
|
|
.RS 4
|
|
The requested
|
|
\fItransport\fR
|
|
protocol is not supported\&.
|
|
.RE
|
|
.PP
|
|
\fBENOCOMPATPROTO\fR
|
|
.RS 4
|
|
The requested
|
|
\fItransport\fR
|
|
protocol is not compatible with the socket type\&.
|
|
.RE
|
|
.PP
|
|
\fBETERM\fR
|
|
.RS 4
|
|
The 0MQ
|
|
\fIcontext\fR
|
|
associated with the specified
|
|
\fIsocket\fR
|
|
was terminated\&.
|
|
.RE
|
|
.PP
|
|
\fBENOTSOCK\fR
|
|
.RS 4
|
|
The provided
|
|
\fIsocket\fR
|
|
was invalid\&.
|
|
.RE
|
|
.PP
|
|
\fBEMTHREAD\fR
|
|
.RS 4
|
|
No I/O thread is available to accomplish the task\&.
|
|
.RE
|
|
.SH "EXAMPLE"
|
|
.PP
|
|
\fBConnecting a subscriber socket to an in-process and a TCP transport\fR.
|
|
.sp
|
|
.if n \{\
|
|
.RS 4
|
|
.\}
|
|
.nf
|
|
/* Create a ZMQ_SUB socket */
|
|
void *socket = zmq_socket (context, ZMQ_SUB);
|
|
assert (socket);
|
|
/* Connect it to an in\-process transport with the address \*(Aqmy_publisher\*(Aq */
|
|
int rc = zmq_connect (socket, "inproc://my_publisher");
|
|
assert (rc == 0);
|
|
/* Connect it to the host server001, port 5555 using a TCP transport */
|
|
rc = zmq_connect (socket, "tcp://server001:5555");
|
|
assert (rc == 0);
|
|
.fi
|
|
.if n \{\
|
|
.RE
|
|
.\}
|
|
.sp
|
|
.SH "SEE ALSO"
|
|
.sp
|
|
\fBzmq_bind\fR(3) \fBzmq_socket\fR(3) \fBzmq\fR(7)
|
|
.SH "AUTHORS"
|
|
.sp
|
|
This manual page was written by the 0MQ community\&.
|