aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGlenn Watson <gw@intuitionlibrary.com>2014-10-20 13:34:14 +1000
committerGlenn Watson <gw@intuitionlibrary.com>2014-10-20 13:34:14 +1000
commit26636474a9f26f84e1d2b2000b2e434b7cc0941f (patch)
tree687214d21a863c9f04fd2c0167ffdbc2310f9cc7 /src
parenta983debaf16d788d500ce12262dc0b9b511b1e8e (diff)
downloadservo-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.rs7
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,