diff options
| author | Garrett D'Amore <garrett@damore.org> | 2017-07-14 19:43:09 -0700 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2017-07-14 19:43:09 -0700 |
| commit | 031f7f441f88379d5359a6e96cdd2fe296052070 (patch) | |
| tree | 6ce377b449fb1922ad5461265697d0df991c4837 /src/core/endpt.h | |
| parent | 36746b4f6615607510eedb8e5d168b0fc4897ded (diff) | |
| download | nng-031f7f441f88379d5359a6e96cdd2fe296052070.tar.gz nng-031f7f441f88379d5359a6e96cdd2fe296052070.tar.bz2 nng-031f7f441f88379d5359a6e96cdd2fe296052070.zip | |
Implemented asynchronous (fully) accept.
This logic leaves a race condition in the dial side, which will
be fixed with a subsequent change to convert that to fully asynchronous
as well.
Diffstat (limited to 'src/core/endpt.h')
| -rw-r--r-- | src/core/endpt.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/core/endpt.h b/src/core/endpt.h index f37ea7cc..a47586a0 100644 --- a/src/core/endpt.h +++ b/src/core/endpt.h @@ -29,12 +29,16 @@ struct nni_ep { nni_thr ep_thr; int ep_mode; int ep_started; + int ep_stop; int ep_closed; // full shutdown int ep_bound; // true if we bound locally nni_mtx ep_mtx; nni_cv ep_cv; nni_pipe * ep_pipe; // Connected pipe (dialers only) nni_list ep_pipes; + nni_aio ep_acc_aio; + nni_aio ep_con_aio; + nni_taskq_ent ep_reap_tqe; }; enum nni_ep_mode { @@ -45,13 +49,10 @@ enum nni_ep_mode { extern int nni_ep_sys_init(void); extern void nni_ep_sys_fini(void); extern int nni_ep_find(nni_ep **, uint32_t); -extern void nni_ep_hold(nni_ep *); -extern void nni_ep_rele(nni_ep *); extern uint32_t nni_ep_id(nni_ep *); extern int nni_ep_create(nni_ep **, nni_sock *, const char *, int); extern void nni_ep_stop(nni_ep *); extern void nni_ep_close(nni_ep *); -extern void nni_ep_remove(nni_ep *); extern int nni_ep_dial(nni_ep *, int); extern int nni_ep_listen(nni_ep *, int); extern void nni_ep_list_init(nni_list *); |
