From 6ef5e30b868474c04746d0eadd4b13526947062a Mon Sep 17 00:00:00 2001
From: gdamore
int nng_send(nng_socket s, void *data, size_t size, int flags);
int nng_sendmsg(nng_socket s, nng_msg *msg, int flags);
-void nng_send_aio(nng_socket s, nng_aio *aio);
+void nng_socket_send(nng_socket s, nng_aio *aio);
-These functions (nng_send, nng_sendmsg, and nng_send_aio) send
+
These functions (nng_send, nng_sendmsg, and nng_socket_send) send
messages over the socket s. The differences in their behaviors are as follows.
@@ -410,8 +410,8 @@ cannot accept more data for sending. In such a case, it will return nng_send, as it gives access to the message structure and eliminates both
a data copy and allocation.
The nng_send_aio function sends a message asynchronously, using the nng_aio aio, over the socket s.
+
The nng_socket_send function sends a message asynchronously, using the nng_aio aio, over the socket s.
The message to send must have been set on aio using the nng_aio_set_msg function.
If the operation completes successfully, then the socket will have disposed of the message.
However, if it fails, then callback of aio should arrange for a final disposition of the message.
@@ -430,9 +430,9 @@ this function instead of These functions ( These functions (
@@ -467,8 +467,8 @@ has no messages available to receive. In such a case, it will return The The
@@ -583,7 +583,7 @@ when possible. This example demonstrates the use of This example demonstrates the use of This example demonstrates the use of This example demonstrates the use of nng_send
Receiving Messages
-int nng_recv(nng_socket s, void *data, size_t *sizep, int flags);
int nng_recvmsg(nng_socket s, nng_msg **msgp, int flags);
-void nng_recv_aio(nng_socket s, nng_aio *aio);
+void nng_socket_recv(nng_socket s, nng_aio *aio);
nng_recv, nng_recvmsg, and nng_recv_aio) receive
+nng_recv, nng_recvmsg, and nng_socket_recv) receive
messages over the socket s. The differences in their behaviors are as follows.nng_recv, as it gives access to the message structure and eliminates both
a data copy and allocation.nng_recv_aio
-nng_send_aio function receives a message asynchronously, using the nng_aio aio, over the socket s.
+nng_socket_recv
+nng_socket_send function receives a message asynchronously, using the nng_aio aio, over the socket s.
On success, the received message can be retrieved from the aio using the nng_aio_get_msg function.nng_socket s = NNG_SOCKET_INITIALIZER;
Example 2: Publishing a Timestamp
-nng_aio, nng_send_aio, and nng_sleep_aio to
+nng_aio, nng_socket_send, and nng_sleep_aio to
build a service that publishes a timestamp at one second intervals. Error handling is elided for the
sake of clarity.#include <stdlib.h>
@@ -613,7 +613,7 @@ void callback(void *arg) {
now = nng_clock();
nng_msg_append(msg, &now, sizeof (now)); // note: native endian
nng_aio_set_msg(state->aio, msg);
- nng_send_aio(state->s, state->aio);
+ nng_socket_send(state->s, state->aio);
} else {
state->sleeping = true;
nng_sleep_aio(1000, state->aio); // 1000 ms == 1 second
@@ -634,7 +634,7 @@ int main(int argc, char **argv) {
}
Example 3: Watching a Periodic Timestamp
-nng_aio, nng_recv_aio, to build a client to
+nng_aio, nng_socket_recv, to build a client to
watch for messages received from the service created in Example 2.
Error handling is elided for the sake of clarity.#include <stdlib.h>
@@ -663,7 +663,7 @@ void callback(void *arg) {
printf("Timestamp is %lu\n", (unsigned long)now);
nng_msg_free(msg);
nng_aio_set_msg(state->aio, NULL);
- nng_recv_aio(state->s, state->aio);
+ nng_socket_recv(state->s, state->aio);
}
int main(int argc, char **argv) {
@@ -673,7 +673,7 @@ int main(int argc, char **argv) {
nng_sub0_open(&state.s);
nng_sub0_socket_subscribe(state.s, NULL, 0); // subscribe to everything
nng_dial(state.s, url, NULL, 0);
- nng_recv_aio(state.s, state.aio); // kick it off right away
+ nng_socket_recv(state.s, state.aio); // kick it off right away
for(;;) {
nng_msleep(0x7FFFFFFF); // infinite, could use pause or sigsuspend
}
--
cgit v1.2.3-70-g09d2