Jump to content

Talk:Event loop

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Choppingmall (talk | contribs) at 04:28, 3 February 2008. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Isn't all this polling causing a lot of wasted CPU usage? --Abdull 14:15, 15 April 2007 (UTC)[reply]

No, the central select (or poll) call is blocking. –EdC 16:06, 15 April 2007 (UTC)[reply]
And blocking (computing) doesn't cause wasted CPU usage? --Abdull 15:49, 19 April 2007 (UTC)[reply]
Certainly not; the kernel will suspend the task until the status of the file descriptor(s) changes or an event occurs. –EdC 21:40, 19 April 2007 (UTC)[reply]
Thank you very much for your answers! --Abdull 20:59, 22 April 2007 (UTC)[reply]


preemptive vs cooperative

In the usage section, I edited a misleading distinction made between cooperative and preemptive models. It was wrongly stated that under the cooperative model getnextmessage() would not block. This is not generally true, the usual case is that it would block. The difference is that under the cooperative model, if the process fails to promptly call the getnextmessage() or yield() it can freeze the whole system. This does not however imply that preemptive systems are more efficient. Choppingmall (talk) 04:28, 3 February 2008 (UTC)[reply]