On Wed, 20 Jun 2007 02:08:12 -0500 "Nathan Ingersoll" <[EMAIL PROTECTED]>
babbled:

> On 6/19/07, The Rasterman Carsten Haitzler <[EMAIL PROTECTED]> wrote:
> >
> > 1. something polling - what, i don't know, but you will need to strace
> > and/or debug and find out. as already pointed out some modules like to poll
> > - but most of them its in the 1 per second or multiple seconds between
> > polls (except cpufreq.
> 
> Which reminds me... glib recently added lower precision timers so that
> they can reduce their wake-ups by grouping their sleep timeouts
> together better. Do the current ecore timer's do this effectively
> enough or should we be considering this type of API?

so have "fuzzy timers" i.e - tick off timer in X seconds give or take Y (so
ecore will try batch them if it can). possibly usefl.

> If four modules get initialized at slightly different times and have 1
> second timeouts, it seems like you could easily end up with four
> wakeups per second.

i think that fixing this by providing a shared universal "poll timer" would be
the way to go. modules simple choose how many poll timeouts to skip before
polling again - so something like

e_polltimer_add(1, _my_func, data); will be called every timer
e_polltimer_add(4, _my_func, data); will be called every 4th poll timer interval

intervals MUST be a power of 2 (1, 2, 4, 8, 16 etc.) so that they are always in
sync so all the 2's tick off together or all the 8's. the polltimer code will
literally set up longer timer during the shared gaps. i.e.

1 1 1 1 1 1 1
2   2   2   2
4           4

so if the "1" interval timer goes away the poll interval basically doubles to 2
(and if the 2 timer also goes away then its every 4 intervals which might be 1
second for example).

> Nathan
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    [EMAIL PROTECTED]
裸好多
Tokyo, Japan (東京 日本)

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
enlightenment-users mailing list
enlightenment-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-users

Reply via email to