Re: How does gmainloop schedule GSources by priority?

2010-08-15 Thread Havoc Pennington
Hi, On Sat, Aug 14, 2010 at 9:57 AM, cee1 wrote: > I've written a test program, which creating watches for two GIOChannels: one > for stdin with a low priority, and the other for a named pipe with a high > priority. Then ran the program with no data written to the named pipe, it > can still respo

Re: How does gmainloop schedule GSources by priority?

2010-08-14 Thread cee1
Hi, Havoc 2010/8/12 Havoc Pennington > Hi, > > Anyway you are correct, the main loop does not do any fancy scheduling > where it allocates time slices. Higher priorities simply always win. > > Havoc > I've written a test program, which creating watches for two GIOChannels: one for stdin with a l

Re: How does gmainloop schedule GSources by priority?

2010-08-12 Thread Havoc Pennington
Hi, On Wed, Aug 11, 2010 at 10:02 PM, cee1 wrote: > So if I have a IOChannel watch source with a high priority, and then attach > an idle source, the idle source will have no change to be scheduled? An idle source will never be scheduled while any higher-priority source is ready. (that's why it'

How does gmainloop schedule GSources by priority?

2010-08-11 Thread cee1
Hi all, I've read some code snippets of gmain.c. It seems a high priority(small value of priority field of GSource struct) source will cause low priority one no change to be processed: 1. The source_list field of GMainContext points to a series of GSources ordered by priority(High -> low).