forked from enlightenment/efl
ethumbd - stop using an idler that spins at 100% cpu while generating queues
This commit is contained in:
parent
b4411c90bf
commit
43725e960a
|
@ -161,7 +161,7 @@ struct _Ethumbd_Slave
|
||||||
struct _Ethumbd
|
struct _Ethumbd
|
||||||
{
|
{
|
||||||
Eldbus_Connection *conn;
|
Eldbus_Connection *conn;
|
||||||
Ecore_Idler *idler;
|
Ecore_Idle_Enterer *idle_enterer;
|
||||||
Ethumbd_Request *processing;
|
Ethumbd_Request *processing;
|
||||||
Ethumbd_Queue queue;
|
Ethumbd_Queue queue;
|
||||||
double timeout;
|
double timeout;
|
||||||
|
@ -768,9 +768,9 @@ _process_queue_cb(void *data)
|
||||||
|
|
||||||
if (!queue->nqueue)
|
if (!queue->nqueue)
|
||||||
{
|
{
|
||||||
ed->idler = NULL;
|
ed->idle_enterer = NULL;
|
||||||
_ethumbd_timeout_redo(ed);
|
_ethumbd_timeout_redo(ed);
|
||||||
ed->idler = NULL;
|
ed->idle_enterer = NULL;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -802,17 +802,17 @@ _process_queue_cb(void *data)
|
||||||
static void
|
static void
|
||||||
_process_queue_start(Ethumbd *ed)
|
_process_queue_start(Ethumbd *ed)
|
||||||
{
|
{
|
||||||
if (!ed->idler)
|
if (!ed->idle_enterer)
|
||||||
ed->idler = ecore_idler_add(_process_queue_cb, ed);
|
ed->idle_enterer = ecore_idle_enterer_add(_process_queue_cb, ed);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_process_queue_stop(Ethumbd *ed)
|
_process_queue_stop(Ethumbd *ed)
|
||||||
{
|
{
|
||||||
if (ed->idler)
|
if (ed->idle_enterer)
|
||||||
{
|
{
|
||||||
ecore_idler_del(ed->idler);
|
ecore_idle_enterer_del(ed->idle_enterer);
|
||||||
ed->idler = NULL;
|
ed->idle_enterer = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue