**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.
Defines | |
#define | PROTON_PROACTOR_H |
#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) |
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 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 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) |
Get the real elapsed time since an arbitrary point in the past in milliseconds. |
**Unsettled API** - An API for multithreaded IO.