diff options
author | Glenn Watson <gw@intuitionlibrary.com> | 2014-10-20 13:34:14 +1000 |
---|---|---|
committer | Glenn Watson <gw@intuitionlibrary.com> | 2014-10-20 13:34:14 +1000 |
commit | 26636474a9f26f84e1d2b2000b2e434b7cc0941f (patch) | |
tree | 687214d21a863c9f04fd2c0167ffdbc2310f9cc7 /src | |
parent | a983debaf16d788d500ce12262dc0b9b511b1e8e (diff) | |
download | servo-26636474a9f26f84e1d2b2000b2e434b7cc0941f.tar.gz servo-26636474a9f26f84e1d2b2000b2e434b7cc0941f.zip |
Introduce a basic shared task pool, and use it for image decoding.
Diffstat (limited to 'src')
-rw-r--r-- | src/lib.rs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/lib.rs b/src/lib.rs index 132d0314558..b745621517b 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -51,6 +51,8 @@ use servo_util::time::TimeProfiler; use servo_util::memory::MemoryProfiler; #[cfg(not(test))] use servo_util::opts; +#[cfg(not(test))] +use servo_util::taskpool::TaskPool; #[cfg(not(test))] use green::GreenTaskBuilder; @@ -79,6 +81,7 @@ pub fn run<Window: WindowMethods>(opts: opts::Opts, window: Option<Rc<Window>>) let opts_clone = opts.clone(); let time_profiler_chan_clone = time_profiler_chan.clone(); + let shared_task_pool = TaskPool::new(8); let (result_chan, result_port) = channel(); TaskBuilder::new() @@ -91,9 +94,9 @@ pub fn run<Window: WindowMethods>(opts: opts::Opts, window: Option<Rc<Window>>) // image load or we risk emitting an output file missing the // image. let image_cache_task = if opts.output_file.is_some() { - ImageCacheTask::new_sync(resource_task.clone()) + ImageCacheTask::new_sync(resource_task.clone(), shared_task_pool) } else { - ImageCacheTask::new(resource_task.clone()) + ImageCacheTask::new(resource_task.clone(), shared_task_pool) }; let font_cache_task = FontCacheTask::new(resource_task.clone()); let constellation_chan = Constellation::<layout::layout_task::LayoutTask, |