Unsettled API - An API for multithreaded IO. More...
#include <proton/condition.h>
#include <proton/event.h>
#include <proton/import_export.h>
#include <proton/types.h>
Go to the source code of this file.
Macros | |
#define | PN_MAX_ADDR |
Size of buffer that can hold the largest connection or listening address. | |
Functions | |
PNP_EXTERN int | pn_proactor_addr (char *addr, size_t size, const char *host, const char *port) |
Format a host:port address string for pn_proactor_connect() or pn_proactor_listen() | |
PNP_EXTERN pn_proactor_t * | pn_proactor (void) |
Create a proactor. | |
PNP_EXTERN void | pn_proactor_free (pn_proactor_t *proactor) |
Free the proactor. | |
PNP_EXTERN void | pn_proactor_connect2 (pn_proactor_t *proactor, pn_connection_t *connection, pn_transport_t *transport, const char *addr) |
Connect transport to addr and bind to connection . | |
PNP_EXTERN void | pn_proactor_connect (pn_proactor_t *proactor, pn_connection_t *connection, const char *addr) |
Deprecated - Use pn_proactor_connect2() | |
PNP_EXTERN void | pn_proactor_listen (pn_proactor_t *proactor, pn_listener_t *listener, const char *addr, int backlog) |
Start listening for incoming connections. | |
PNP_EXTERN void | pn_proactor_disconnect (pn_proactor_t *proactor, pn_condition_t *condition) |
Disconnect all connections and listeners belonging to the proactor. | |
PNP_EXTERN pn_event_batch_t * | pn_proactor_wait (pn_proactor_t *proactor) |
Wait until there are Proactor events to handle. | |
PNP_EXTERN pn_event_batch_t * | pn_proactor_get (pn_proactor_t *proactor) |
Return Proactor events if any are available immediately. | |
PNP_EXTERN pn_event_t * | pn_event_batch_next (pn_event_batch_t *batch) |
Remove the next event from the batch and return it. | |
PNP_EXTERN pn_proactor_t * | pn_event_batch_proactor (pn_event_batch_t *batch) |
Query the batch for the subject of the batch. | |
PNP_EXTERN pn_listener_t * | pn_event_batch_listener (pn_event_batch_t *batch) |
Query the batch for the subject of the batch. | |
PNP_EXTERN pn_connection_t * | pn_event_batch_connection (pn_event_batch_t *batch) |
Query the batch for the subject of the batch. | |
PNP_EXTERN void | pn_proactor_done (pn_proactor_t *proactor, pn_event_batch_t *events) |
Call when finished handling a batch of events. | |
PNP_EXTERN void | pn_proactor_interrupt (pn_proactor_t *proactor) |
Return a PN_PROACTOR_INTERRUPT event as soon as possible. | |
PNP_EXTERN void | pn_proactor_set_timeout (pn_proactor_t *proactor, pn_millis_t timeout) |
Return a PN_PROACTOR_TIMEOUT after timeout milliseconds elapse. | |
PNP_EXTERN void | pn_proactor_cancel_timeout (pn_proactor_t *proactor) |
Cancel the pending timeout set by pn_proactor_set_timeout(). | |
PNP_EXTERN void | pn_proactor_release_connection (pn_connection_t *connection) |
Release ownership of connection , disassociate it from its proactor. | |
PNP_EXTERN void | pn_connection_wake (pn_connection_t *connection) |
Return a PN_CONNECTION_WAKE event for connection as soon as possible. | |
PNP_EXTERN void | pn_connection_write_flush (pn_connection_t *connection) |
Unsettled API Send available AMQP protocol frames to the remote peer. | |
PNP_EXTERN pn_proactor_t * | pn_connection_proactor (pn_connection_t *connection) |
Return the proactor associated with a connection. | |
PNP_EXTERN pn_proactor_t * | pn_event_proactor (pn_event_t *event) |
Return the proactor associated with an event. | |
PNP_EXTERN pn_millis_t | pn_proactor_now (void) |
PNP_EXTERN int64_t | pn_proactor_now_64 (void) |
Get the real elapsed time since an arbitrary point in the past in milliseconds. | |
PNP_EXTERN void | pn_proactor_raw_connect (pn_proactor_t *proactor, pn_raw_connection_t *raw_connection, const char *addr) |
Connect addr and bind to raw_connection . | |
Unsettled API - An API for multithreaded IO.