On Monday 17 August 2009 09:49:47 Thiago Macieira wrote: > Em Segunda-feira 17 Agosto 2009, ās 15:16:19, Dawit A. escreveu: > > On Monday 17 August 2009 04:09:53 Thiago Macieira wrote: > > > Em Domingo 16 Agosto 2009, ās 14:31:01, Dawit A. escreveu: > > > > The attached patch changes KIO::AccessManager to schedule all the job > > > > requests it receives to prevent the explosion of kio_http process > > > > that can get spawned when many requests are made by an application > > > > all at once, e.g. rendering any moderately complex site. > > > > > > > > You can easily see this by using the webkitpart in Konqueror and > > > > visiting any moderately complex site. For example, before the patch > > > > visiting qt.nokia.com/developer spawns 21 kio_http processes where as > > > > only 2 are spawned with the patch. Actually the scheduler always > > > > seems to spawn only 2 processes per site. > > > > > > That's how it should be. I'm wondering why the explicitly scheduling is > > > necessary. > > > > > > Shouldn't all jobs be scheduled by default in KIO? > > > > Well KIO::Scheduler does schedule all jobs. However, it provides 3 > > different scheduling modes. > > > > The default mode, Direct, will not control how many jobs gets to be > > spawned. Rather it simply assumes the application will manage its > > requests appropriately and simply recycle an existing job if it can be > > reused to fulfill the request or create a new one. That however means > > that it does not cope very well, from the prespective ioslave spawning, > > when an application creates too many jobs in a short time span... > > Reuse a job? I don't think you can do that. I meant to say reuse the ioslave of course...