forked from enlightenment/efl
eio/fallback: remove intermediate idler
for some reason, the fallback thread would exit -> create timer -> create idler -> create thread; the existence of the idler makes little sense and introduces variability in the timer interval @fix Differential Revision: https://phab.enlightenment.org/D6441
This commit is contained in:
parent
1b18a4e679
commit
062f6cabdd
|
@ -44,7 +44,6 @@ struct _Eio_Monitor_Backend
|
||||||
Eina_Hash *children;
|
Eina_Hash *children;
|
||||||
|
|
||||||
Ecore_Timer *timer;
|
Ecore_Timer *timer;
|
||||||
Ecore_Idler *idler;
|
|
||||||
Ecore_Thread *work;
|
Ecore_Thread *work;
|
||||||
|
|
||||||
int version;
|
int version;
|
||||||
|
@ -250,19 +249,6 @@ _eio_monitor_fallback_cancel_cb(void *data, Ecore_Thread *thread EINA_UNUSED)
|
||||||
eina_hash_set(timer_hash, &backend, backend->timer);
|
eina_hash_set(timer_hash, &backend, backend->timer);
|
||||||
}
|
}
|
||||||
|
|
||||||
static Eina_Bool
|
|
||||||
_eio_monitor_fallback_idler_cb(void *data)
|
|
||||||
{
|
|
||||||
Eio_Monitor_Backend *backend = data;
|
|
||||||
|
|
||||||
backend->idler = NULL;
|
|
||||||
backend->work = ecore_thread_run(_eio_monitor_fallback_heavy_cb,
|
|
||||||
_eio_monitor_fallback_end_cb,
|
|
||||||
_eio_monitor_fallback_cancel_cb,
|
|
||||||
backend);
|
|
||||||
return EINA_FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
static Eina_Bool
|
static Eina_Bool
|
||||||
_eio_monitor_fallback_timer_cb(void *data)
|
_eio_monitor_fallback_timer_cb(void *data)
|
||||||
{
|
{
|
||||||
|
@ -270,7 +256,10 @@ _eio_monitor_fallback_timer_cb(void *data)
|
||||||
|
|
||||||
backend->timer = NULL;
|
backend->timer = NULL;
|
||||||
eina_hash_set(timer_hash, &backend, NULL);
|
eina_hash_set(timer_hash, &backend, NULL);
|
||||||
backend->idler = ecore_idler_add(_eio_monitor_fallback_idler_cb, backend);
|
backend->work = ecore_thread_run(_eio_monitor_fallback_heavy_cb,
|
||||||
|
_eio_monitor_fallback_end_cb,
|
||||||
|
_eio_monitor_fallback_cancel_cb,
|
||||||
|
backend);
|
||||||
|
|
||||||
return EINA_FALSE;
|
return EINA_FALSE;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue