pdfRenderWorkerPoolSize top-level property
How many platform workers PdfRenderWorker.start fans page records across.
One worker decodes pages strictly serially: a raster-heavy CAD document whose every sheet is a multi-second image decode fills in one page at a time, so the tail of a scrolled-through document takes a long time to finish warming even though each page is already off the UI thread. A pool of N workers decodes up to N pages at once. The pool routes new pages to the least-loaded active worker and remembers the route while the request is outstanding, so PdfRenderWorker.cancel still reaches the right queue.
The cost is memory: each worker opens its own copy of the document, so the pool holds N copies of the bytes plus N decode working sets. Default 3 gives long documents enough parallelism for viewport-ordered thumbnails without flooding the machine. The host can set this once before opening a viewer, sized to the platform - fewer on a memory-constrained device. Values below 1 mean 1.
Implementation
int pdfRenderWorkerPoolSize = defaultPdfRenderWorkerPoolSize;