summaryrefslogtreecommitdiff
path: root/doc/zmq_term.3
blob: d68b100609e958810b5246ce54f23558fa015e5d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
'\" t
.\"     Title: zmq_term
.\"    Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\"      Date: 11/22/2011
.\"    Manual: 0MQ Manual
.\"    Source: 0MQ 2.1.10
.\"  Language: English
.\"
.TH "ZMQ_TERM" "3" "11/22/2011" "0MQ 2\&.1\&.10" "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_term \- terminate 0MQ context
.SH "SYNOPSIS"
.sp
\fBint zmq_term (void \fR\fB\fI*context\fR\fR\fB);\fR
.SH "DESCRIPTION"
.sp
The \fIzmq_term()\fR function shall terminate the 0MQ context \fIcontext\fR\&.
.sp
Context termination is performed in the following steps:
.sp
.RS 4
.ie n \{\
\h'-04' 1.\h'+01'\c
.\}
.el \{\
.sp -1
.IP "  1." 4.2
.\}
Any blocking operations currently in progress on sockets open within
\fIcontext\fR
shall return immediately with an error code of ETERM\&. With the exception of
\fIzmq_close()\fR, any further operations on sockets open within
\fIcontext\fR
shall fail with an error code of ETERM\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04' 2.\h'+01'\c
.\}
.el \{\
.sp -1
.IP "  2." 4.2
.\}
After interrupting all blocking calls,
\fIzmq_term()\fR
shall
\fIblock\fR
until the following conditions are satisfied:
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
All sockets open within
\fIcontext\fR
have been closed with
\fIzmq_close()\fR\&.
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
For each socket within
\fIcontext\fR, all messages sent by the application with
\fIzmq_send()\fR
have either been physically transferred to a network peer, or the socket\(cqs linger period set with the
\fIZMQ_LINGER\fR
socket option has expired\&.
.RE
.RE
.sp
For further details regarding socket linger behaviour refer to the \fIZMQ_LINGER\fR option in \fBzmq_setsockopt\fR(3)\&.
.SH "RETURN VALUE"
.sp
The \fIzmq_term()\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
\fBEFAULT\fR
.RS 4
The provided
\fIcontext\fR
was invalid\&.
.RE
.PP
\fBEINTR\fR
.RS 4
Termination was interrupted by a signal\&. It can be restarted if needed\&.
.RE
.SH "SEE ALSO"
.sp
\fBzmq\fR(7) \fBzmq_init\fR(3) \fBzmq_close\fR(3) \fBzmq_setsockopt\fR(3)
.SH "AUTHORS"
.sp
This 0MQ manual page was written by Martin Sustrik <\m[blue]\fBsustrik@250bpm\&.com\fR\m[]\&\s-2\u[1]\d\s+2> and Martin Lucina <\m[blue]\fBmato@kotelna\&.sk\fR\m[]\&\s-2\u[2]\d\s+2>\&.
.SH "NOTES"
.IP " 1." 4
sustrik@250bpm.com
.RS 4
\%mailto:sustrik@250bpm.com
.RE
.IP " 2." 4
mato@kotelna.sk
.RS 4
\%mailto:mato@kotelna.sk
.RE