From: Fred Smith <fredex at fcshome.stoneham.ma.us> > On Tue, Feb 04, 2014 at 07:43:27AM -0800, John Doe wrote: >> Maybe webkit's ImageDecoder "function"... > Firefox uses WebKit???? Ok, maybe I need some vacations... Last try, from the source "mozilla-release/image/src/RasterImage.cpp": RasterImage::DecodePool::DecodePool() : mThreadPoolMutex("Thread Pool") { if (gMultithreadedDecoding) { mThreadPool = do_CreateInstance(NS_THREADPOOL_CONTRACTID); if (mThreadPool) { mThreadPool->SetName(NS_LITERAL_CSTRING("ImageDecoder")); uint32_t limit; if (gDecodingThreadLimit <= 0) { limit = std::max(PR_GetNumberOfProcessors(), 2) - 1; } else { limit = static_cast<uint32_t>(gDecodingThreadLimit); } mThreadPool->SetThreadLimit(limit); mThreadPool->SetIdleThreadLimit(limit); nsCOMPtr<nsIObserverService> obsSvc = mozilla::services::GetObserverService(); if (obsSvc) { obsSvc->AddObserver(this, "xpcom-shutdown-threads", false); } } } } JD