From 1858663245759506aa57c753f18fb5caa0e4bf43 Mon Sep 17 00:00:00 2001 From: "Davide P. Cervone" Date: Sun, 14 Nov 2010 21:05:23 -0500 Subject: [PATCH] Do Jax and Extensions in parallel --- mathjax/unpacked/MathJax.js | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/mathjax/unpacked/MathJax.js b/mathjax/unpacked/MathJax.js index ba1f7c908..699cd5a24 100644 --- a/mathjax/unpacked/MathJax.js +++ b/mathjax/unpacked/MathJax.js @@ -1540,7 +1540,8 @@ MathJax.Hub.Startup = { if (config.jax[i].substr(0,7) === "output/") {config.outputJax.order[config.jax[i].substr(7)] = k; k++} } - return this.queue.Push( + var queue = MathJax.Callback.Queue(); + return queue.Push( ["Post",this.signal,"Begin Jax"], ["loadArray",this,config.jax,"jax","config.js"], ["Post",this.signal,"End Jax"] @@ -1550,7 +1551,8 @@ MathJax.Hub.Startup = { // Load the extensions // Extensions: function () { - return this.queue.Push( + var queue = MathJax.Callback.Queue(); + return queue.Push( ["Post",this.signal,"Begin Extensions"], ["loadArray",this,MathJax.Hub.config.extensions,"extensions"], ["Post",this.signal,"End Extensions"] @@ -1935,8 +1937,14 @@ MathJax.Hub.Startup = { ["Config",STARTUP], ["Cookie",STARTUP], ["Styles",STARTUP], - ["Jax",STARTUP], - ["Extensions",STARTUP], + function () { + // Do Jax and Extensions in parallel, but wait for them all to complete + var queue = BASE.Callback.Queue( + STARTUP.Jax(), + STARTUP.Extensions() + ); + return queue.Push({}); + }, STARTUP.onLoad(), function () {MathJax.isReady = true}, // indicates that MathJax is ready to process math ["Typeset",STARTUP],