table of contents
NNG_SUB(7) | NNG Reference Manual | NNG_SUB(7) |
NAME¶
nng_sub - subscriber protocol
SYNOPSIS¶
#include <nng/nng.h> #include <nng/protocol/pubsub0/sub.h>
DESCRIPTION¶
The sub protocol is one half of a publisher/subscriber pattern. In this pattern, a publisher sends data, which is broadcast to all subscribers. The subscribing applications only see the data to which they have subscribed.
The sub protocol is the subscriber side, and the pub protocol is the publisher side.
Note
In this implementation, the publisher delivers all messages to all
subscribers. The subscribers maintain their own subscriptions, and filter them
locally. Thus, this pattern should not be used in an attempt to reduce
bandwidth consumption.
The topics that subscribers subscribe to is just the first part of the message body. Applications should construct their messages accordingly.
Socket Operations¶
The nng_sub0_open() functions create a subscriber socket. This socket may be used to receive messages, but is unable to send them. Attempts to send messages will result in NNG_ENOTSUP.
Protocol Versions¶
Only version 0 of this protocol is supported. (At the time of writing, no other versions of this protocol have been defined.)
Protocol Options¶
The following protocol-specific options are available.
NNG_OPT_SUB_SUBSCRIBE
Note
This option is a byte array. Thus if you use
nng_setopt_string() the NUL
terminator byte will be included in the topic. If that isn’t desired,
consider using nng_setopt() and using
strlen() of the topic as the topic size.
Tip
To receive all messages, an empty topic (zero length) can be used.
NNG_OPT_SUB_UNSUBSCRIBE
NNG_OPT_SUB_PREFNEW
Protocol Headers¶
The sub protocol has no protocol-specific headers.
SEE ALSO¶
nng_sub_open(3), nng_pub(7), nng(7)
2024-05-31 |