diff options
| author | Staysail Systems, Inc <info@staysail.tech> | 2024-01-01 17:24:25 -0800 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2024-01-01 17:25:59 -0800 |
| commit | ff237834c56b370c6d2247a767f3886d9eb4e94c (patch) | |
| tree | ae08cc1363e8836e5447558dd53f50e02708b2ae /man/v1.7.0/nng_ctx_sendmsg.3.html | |
| parent | 88b7f244642186f349f251673312e6f90f541f08 (diff) | |
| download | nng-ff237834c56b370c6d2247a767f3886d9eb4e94c.tar.gz nng-ff237834c56b370c6d2247a767f3886d9eb4e94c.tar.bz2 nng-ff237834c56b370c6d2247a767f3886d9eb4e94c.zip | |
Manual page updates for v1.7.0
Diffstat (limited to 'man/v1.7.0/nng_ctx_sendmsg.3.html')
| -rw-r--r-- | man/v1.7.0/nng_ctx_sendmsg.3.html | 187 |
1 files changed, 187 insertions, 0 deletions
diff --git a/man/v1.7.0/nng_ctx_sendmsg.3.html b/man/v1.7.0/nng_ctx_sendmsg.3.html new file mode 100644 index 00000000..6ef2fe73 --- /dev/null +++ b/man/v1.7.0/nng_ctx_sendmsg.3.html @@ -0,0 +1,187 @@ +--- +version: v1.7.0 +layout: manpage_v2 +title: nng_ctx_sendmsg(3) +--- +<h1>nng_ctx_sendmsg(3)</h1> +<div class="sect1"> +<h2 id="_name">NAME</h2> +<div class="sectionbody"> +<div class="paragraph"> +<p>nng_ctx_sendmsg - send message using context</p> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_synopsis">SYNOPSIS</h2> +<div class="sectionbody"> +<div class="listingblock"> +<div class="content"> +<pre class="pygments highlight"><code data-lang="c"><span class="tok-cp">#include</span> <span class="tok-cpf"><nng/nng.h></span> + +<span class="tok-kt">int</span> <span class="tok-nf">nng_ctx_sendmsg</span><span class="tok-p">(</span><span class="tok-n">nng_ctx</span> <span class="tok-n">c</span><span class="tok-p">,</span> <span class="tok-n">nng_msg</span> <span class="tok-o">*</span><span class="tok-n">msg</span><span class="tok-p">,</span> <span class="tok-kt">int</span> <span class="tok-n">flags</span><span class="tok-p">);</span></code></pre> +</div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_description">DESCRIPTION</h2> +<div class="sectionbody"> +<div class="paragraph"> +<p>The <code>nng_ctx_sendmsg()</code> sends message <em>msg</em> using the context <em>ctx</em>.</p> +</div> +<div class="paragraph"> +<p>If the function returns zero, indicating it has accepted the message for +delivery, then the <em>msg</em> is owned by the socket <em>s</em>, and the caller +must not make any further use of it. +The socket will free the message when it is finished.</p> +</div> +<div class="paragraph"> +<p>If the function returns non-zero, then it is the caller’s responsibility +to dispose of the <em>msg</em>, which may include freeing it, sending it to +another socket, or simply trying again later.</p> +</div> +<div class="admonitionblock note"> +<table> +<tr> +<td class="icon"> +<i class="fa icon-note" title="Note"></i> +</td> +<td class="content"> +The semantics of what sending a message means vary from protocol to +protocol, so examination of the protocol documentation is encouraged. +</td> +</tr> +</table> +</div> +<div class="paragraph"> +<p>The <em>flags</em> may contain the following value:</p> +</div> +<div class="dlist"> +<dl> +<dt class="hdlist1"><code>NNG_FLAG_NONBLOCK</code></dt> +<dd> +<p>The function returns immediately, regardless of whether +the context is able to accept the data or not. +If the context is unable to accept the data (such as if backpressure exists +because the peers are consuming messages too slowly, or no peer is present), +then the function will return with <code>NNG_EAGAIN</code>. +If this flag is not specified, then the function will block if such a +condition exists.</p> +</dd> +</dl> +</div> +<div class="admonitionblock note"> +<table> +<tr> +<td class="icon"> +<i class="fa icon-note" title="Note"></i> +</td> +<td class="content"> +Regardless of the presence or absence of <code>NNG_FLAG_NONBLOCK</code>, there may +be queues between the sender and the receiver. +Furthermore, there is no guarantee that the message has actually been delivered. +Finally, with some protocols, the semantic is implicitly <code>NNG_FLAG_NONBLOCK</code>. +</td> +</tr> +</table> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_return_values">RETURN VALUES</h2> +<div class="sectionbody"> +<div class="paragraph"> +<p>This function returns 0 on success, and non-zero otherwise.</p> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_errors">ERRORS</h2> +<div class="sectionbody"> +<div class="hdlist"> +<table> +<tr> +<td class="hdlist1"> +<code>NNG_EAGAIN</code> +</td> +<td class="hdlist2"> +<p>The operation would block, but <code>NNG_FLAG_NONBLOCK</code> was specified.</p> +</td> +</tr> +<tr> +<td class="hdlist1"> +<code>NNG_ECLOSED</code> +</td> +<td class="hdlist2"> +<p>The context or socket is not open.</p> +</td> +</tr> +<tr> +<td class="hdlist1"> +<code>NNG_EINVAL</code> +</td> +<td class="hdlist2"> +<p>An invalid set of <em>flags</em> was specified.</p> +</td> +</tr> +<tr> +<td class="hdlist1"> +<code>NNG_EMSGSIZE</code> +</td> +<td class="hdlist2"> +<p>The value of <em>size</em> is too large.</p> +</td> +</tr> +<tr> +<td class="hdlist1"> +<code>NNG_ENOMEM</code> +</td> +<td class="hdlist2"> +<p>Insufficient memory is available.</p> +</td> +</tr> +<tr> +<td class="hdlist1"> +<code>NNG_ENOTSUP</code> +</td> +<td class="hdlist2"> +<p>The protocol does not support sending.</p> +</td> +</tr> +<tr> +<td class="hdlist1"> +<code>NNG_ESTATE</code> +</td> +<td class="hdlist2"> +<p>The context cannot send data in this state.</p> +</td> +</tr> +<tr> +<td class="hdlist1"> +<code>NNG_ETIMEDOUT</code> +</td> +<td class="hdlist2"> +<p>The operation timed out.</p> +</td> +</tr> +</table> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_see_also">SEE ALSO</h2> +<div class="sectionbody"> +<div class="paragraph text-left"> +<p><a href="nng_msg_alloc.3.html">nng_msg_alloc(3)</a>, +<a href="nng_ctx_open.3.html">nng_ctx_open(3)</a>, +<a href="nng_ctx_recvmsg.3.html">nng_ctx_recvmsg(3)</a>, +<a href="nng_ctx_send.3.html">nng_ctx_send(3)</a>, +<a href="nng_sendmsg.3.html">nng_sendmsg(3)</a>, +<a href="nng_strerror.3.html">nng_strerror(3)</a>, +<a href="nng_msg.5.html">nng_msg(5)</a>, +<a href="nng_ctx.5.html">nng_ctx(5)</a>, +<a href="nng.7.html">nng(7)</a></p> +</div> +</div> +</div> |
