doompanning/docs/man/nng_msg.5.adoc
oxmox 7063e2102e Squashed 'external/nng/' content from commit 29b73962
git-subtree-dir: external/nng
git-subtree-split: 29b73962b939a6fbbf6ea8d5d7680bb06d0eeb99
2024-12-18 18:29:29 +01:00

64 lines
2.1 KiB
Text

= nng_msg(5)
//
// Copyright 2019 Staysail Systems, Inc. <info@staysail.tech>
// Copyright 2018 Capitar IT Group BV <info@capitar.com>
//
// This document is supplied under the terms of the MIT License, a
// copy of which should be located in the distribution where this
// file was obtained (LICENSE.txt). A copy of the license may also be
// found online at https://opensource.org/licenses/MIT.
//
== NAME
nng_msg - message
== SYNOPSIS
[source, c]
----
#include <nng/nng.h>
typedef struct nng_msg nng_msg;
----
== DESCRIPTION
An `nng_msg` represents a single ((message)) sent between Scalability Protocols
peers.
Messages internally have a ((body)), containing the application supplied
payload, and a ((header)), containing protocol specific routing and similar
related information.
TIP: Using message-oriented functions is a good way to reduce the likelihood
of data copies and improve application performance.
Messages are allocated using the xref:nng_msg_alloc.3.adoc[`nng_msg_alloc()`]
function, and are deallocated using the xref:nng_msg_free.3.adoc[`nng_msg_free()`]
function.
In addition there are other functions used to access message contents,
including adding data to either the beginning or end of the message,
automatic data conversion, and removing data from the beginning or end.
These functions are designed to try to avoid copying message contents
by making use of scratch areas at the beginning and end of the message.
== SEE ALSO
[.text-left]
xref:nng_aio_get_msg.3.adoc[nng_aio_get_msg(3)],
xref:nng_aio_set_msg.3.adoc[nng_aio_set_msg(3)],
xref:nng_msg_alloc.3.adoc[nng_msg_alloc(3)],
xref:nng_msg_body.3.adoc[nng_msg_body(3)],
xref:nng_msg_dup.3.adoc[nng_msg_dup(3)],
xref:nng_msg_free.3.adoc[nng_msg_free(3)],
xref:nng_msg_header.3.adoc[nng_msg_header(3)],
xref:nng_msg_header_len.3.adoc[nng_msg_header_len(3)],
xref:nng_msg_len.3.adoc[nng_msg_len(3)],
xref:nng_msg_capacity.3.adoc[nng_msg_capacity(3)],
xref:nng_msg_reserve.3.adoc[nng_msg_reserve(3)],
xref:nng_msg_realloc.3.adoc[nng_msg_realloc(3)],
xref:nng_recvmsg.3.adoc[nng_recvmsg(3)],
xref:nng_sendmsg.3.adoc[nng_sendmsg(3)],
xref:nng_strerror.3.adoc[nng_strerror(3)],
xref:nng.7.adoc[nng(7)]