summaryrefslogtreecommitdiff
path: root/src/lib/eio
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@samsung.com>2018-06-26 16:42:04 -0400
committerMarcel Hollerbach <mail@marcel-hollerbach.de>2018-06-28 18:08:45 +0200
commit062f6cabdd0cb7ca96de92cbd149f7a23af7d9b7 (patch)
treea33dd9d10ee97db5797ffc69235914080e4fe1c6 /src/lib/eio
parent1b18a4e67971486e2c8a6df1dfdc0a3b459d5608 (diff)
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
Diffstat (limited to 'src/lib/eio')
-rw-r--r--src/lib/eio/eio_monitor_poll.c17
1 files changed, 3 insertions, 14 deletions
diff --git a/src/lib/eio/eio_monitor_poll.c b/src/lib/eio/eio_monitor_poll.c
index 45e3281615..7bb5212d51 100644
--- a/src/lib/eio/eio_monitor_poll.c
+++ b/src/lib/eio/eio_monitor_poll.c
@@ -44,7 +44,6 @@ struct _Eio_Monitor_Backend
44 Eina_Hash *children; 44 Eina_Hash *children;
45 45
46 Ecore_Timer *timer; 46 Ecore_Timer *timer;
47 Ecore_Idler *idler;
48 Ecore_Thread *work; 47 Ecore_Thread *work;
49 48
50 int version; 49 int version;
@@ -251,26 +250,16 @@ _eio_monitor_fallback_cancel_cb(void *data, Ecore_Thread *thread EINA_UNUSED)
251} 250}
252 251
253static Eina_Bool 252static Eina_Bool
254_eio_monitor_fallback_idler_cb(void *data) 253_eio_monitor_fallback_timer_cb(void *data)
255{ 254{
256 Eio_Monitor_Backend *backend = data; 255 Eio_Monitor_Backend *backend = data;
257 256
258 backend->idler = NULL; 257 backend->timer = NULL;
258 eina_hash_set(timer_hash, &backend, NULL);
259 backend->work = ecore_thread_run(_eio_monitor_fallback_heavy_cb, 259 backend->work = ecore_thread_run(_eio_monitor_fallback_heavy_cb,
260 _eio_monitor_fallback_end_cb, 260 _eio_monitor_fallback_end_cb,
261 _eio_monitor_fallback_cancel_cb, 261 _eio_monitor_fallback_cancel_cb,
262 backend); 262 backend);
263 return EINA_FALSE;
264}
265
266static Eina_Bool
267_eio_monitor_fallback_timer_cb(void *data)
268{
269 Eio_Monitor_Backend *backend = data;
270
271 backend->timer = NULL;
272 eina_hash_set(timer_hash, &backend, NULL);
273 backend->idler = ecore_idler_add(_eio_monitor_fallback_idler_cb, backend);
274 263
275 return EINA_FALSE; 264 return EINA_FALSE;
276} 265}