redraw, who (xlib/cairo), when...

Glynn Clements glynn at gclements.plus.com
Tue May 28 12:12:17 PDT 2013


First Last wrote:

> after some reads and looking at the event.c from jwm, my clock works!
> I'm using a structure like this :

>                 while(XPending(dpy)==0){
>                         usleep(100);
>                         updateClock(&myClock);
> 

Ugh. This causes the process to be scheduled up to 10,000 times per
second, which is almost a busy wait. I would expect this process to
consume far more CPU than is necessary.

It would be significantly more efficient to use select() or poll() on
the connection to the X server so that the process is only scheduled
when there is something for it to do. Or failing that, at least
increase the sleep interval substantially.

-- 
Glynn Clements <glynn at gclements.plus.com>


More information about the xorg mailing list