static int stop_timer(os_handler_t *handler, os_hnd_timer_id_t *timer_data) { int rv = sel_stop_timer(timer_data->timer); if (rv == 0) timer_data->running = 0; return rv; }
int sel_free_timer(sel_timer_t *timer) { if (timer->in_heap) { sel_stop_timer(timer); } free(timer); return 0; }
static int stop_timer(os_handler_t *handler, os_hnd_timer_id_t *timer_data) { int rv; pthread_mutex_lock(&timer_data->lock); rv = sel_stop_timer(timer_data->timer); if (rv == 0) timer_data->running = 0; pthread_mutex_unlock(&timer_data->lock); return rv; }
int sel_free_timer(sel_timer_t *timer) { selector_t *sel = timer->val.sel; if (sel->have_timer_lock) sel->os_hnd->lock(sel->os_hnd, sel->timer_lock); if (timer->val.in_heap) { sel_stop_timer(timer); } if (sel->have_timer_lock) sel->os_hnd->unlock(sel->os_hnd, sel->timer_lock); free(timer); return 0; }
static int stop_timer(os_handler_t *handler, os_hnd_timer_id_t *timer_data) { return sel_stop_timer(timer_data->timer); }