aboutsummaryrefslogtreecommitdiff
path: root/docs/man/nng_rep.7.adoc
diff options
context:
space:
mode:
Diffstat (limited to 'docs/man/nng_rep.7.adoc')
-rw-r--r--docs/man/nng_rep.7.adoc21
1 files changed, 17 insertions, 4 deletions
diff --git a/docs/man/nng_rep.7.adoc b/docs/man/nng_rep.7.adoc
index 255a8f4b..789b515d 100644
--- a/docs/man/nng_rep.7.adoc
+++ b/docs/man/nng_rep.7.adoc
@@ -41,15 +41,28 @@ The _rep_ protocol is the replier side, and the
The <<nng_rep_open.3#,`nng_rep0_open()`>> functions create a replier socket.
This socket may be used to receive messages (requests), and then to send
replies.
+
Generally a reply can only be sent after receiving a request.
-(Attempts to receive a message will result in `NNG_ESTATE` if there
-is no outstanding request.)
-Attempts to send on a socket with no outstanding requests will result
-in `NNG_ESTATE`.
+Send operations will result in `NNG_ESTATE` if no corresponding request
+was previously received.
+
+Likewise, only one receive operation may be pending at a time.
+Any additional concurrent receive operations will result in `NNG_ESTATE`.
<<nng.7#raw_mode,Raw>> mode sockets ignore all these restrictions.
+=== Context Operations
+
+This protocol supports the creation of <<nng_ctx.5#,contexts>> for concurrent
+use cases using <<nng_ctx_open.3#,`nng_ctx_open()`>>.
+
+Each context may have at most one outstanding request, and operates
+independently from the others.
+The restrictions for order of operations with sockets apply equally
+well for contexts, except that each context will be treated as if it were
+a separate socket.
+
=== Protocol Versions
Only version 0 of this protocol is supported.