summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pkev.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/pkev.h b/pkev.h
index 3ec6826..0458f1e 100644
--- a/pkev.h
+++ b/pkev.h
@@ -44,6 +44,10 @@ void pk_ev_emit(pk_ev_mgr_id_T evmgr, pk_ev_id_T evid);
# define PK_EV_INIT_CB_COUNT 8
#endif
+#ifndef PK_EV_GROW_RATIO
+# define PK_EV_GROW_RATIO 1.5
+#endif
+
struct pk_ev {
pk_ev_cb **cb;
atomic_uint_fast8_t n_cb;
@@ -191,7 +195,7 @@ pk_ev_register_ev(pk_ev_mgr_id_T evmgr)
struct pk_ev_mgr *mgr;
mtx_lock(&pk_ev_mstr.mtxs[evmgr]);
if (pk_ev_mstr.mgrs[evmgr]->n_ev == pk_ev_mstr.mgrs[evmgr]->rn_ev) {
- mgr = pk_ev_inner_ev_mgr_create(pk_ev_mstr.mgrs[evmgr]->rn_ev * 1.5, pk_ev_mstr.mgrs[evmgr]->rn_cb);
+ mgr = pk_ev_inner_ev_mgr_create(pk_ev_mstr.mgrs[evmgr]->rn_ev * PK_EV_GROW_RATIO, pk_ev_mstr.mgrs[evmgr]->rn_cb);
pk_ev_inner_ev_mgr_clone(pk_ev_mstr.mgrs[evmgr], mgr);
free(pk_ev_mstr.mgrs[evmgr]);
pk_ev_mstr.mgrs[evmgr] = mgr;
@@ -208,7 +212,7 @@ pk_ev_register_cb(pk_ev_mgr_id_T evmgr, pk_ev_id_T evid, pk_ev_cb *cb)
struct pk_ev_mgr *mgr;
mtx_lock(&pk_ev_mstr.mtxs[evmgr]);
if (pk_ev_mstr.mgrs[evmgr]->ev[evid].n_cb == pk_ev_mstr.mgrs[evmgr]->rn_cb) {
- mgr = pk_ev_inner_ev_mgr_create(pk_ev_mstr.mgrs[evmgr]->rn_ev, pk_ev_mstr.mgrs[evmgr]->rn_cb * 1.5);
+ mgr = pk_ev_inner_ev_mgr_create(pk_ev_mstr.mgrs[evmgr]->rn_ev, pk_ev_mstr.mgrs[evmgr]->rn_cb * PK_EV_GROW_RATIO);
pk_ev_inner_ev_mgr_clone(pk_ev_mstr.mgrs[evmgr], mgr);
free(pk_ev_mstr.mgrs[evmgr]);
pk_ev_mstr.mgrs[evmgr] = mgr;