ladybird/Services/ImageDecoder
Andreas Kling 88dfee5528 ImageDecoder: Decode images on ThreadPool
Dispatch image decode work to ThreadPool workers instead of the old
BackgroundAction helper. BackgroundAction funneled all jobs through one
background thread, so image decodes were still serialized. The pool
lets independent decode jobs run in parallel while completions are
posted back to the origin event loop.

Keep pending decode state as a small cancel flag. Make animated
sessions ref-counted with a mutex so overlapping frame requests cannot
race shared decoders once jobs run in parallel.
2026-06-05 20:00:12 +02:00
..
CMakeLists.txt LibThreading/LibSync: Split out sync primitives 2026-05-08 18:58:35 -05:00
ConnectionFromClient.cpp ImageDecoder: Decode images on ThreadPool 2026-06-05 20:00:12 +02:00
ConnectionFromClient.h ImageDecoder: Decode images on ThreadPool 2026-06-05 20:00:12 +02:00
Forward.h Everywhere: Hoist the Services folder to the top-level 2024-11-10 12:50:45 +01:00
ImageDecoderClient.ipc LibImageDecoderClient: Remove sync id fetch from async decode request 2026-02-28 00:04:06 -06:00
ImageDecoderServer.ipc LibIPC+LibWeb+LibWebView+Services: Add IPC::TransportHandle 2026-03-12 20:32:55 +01:00
main.cpp LibCore: Keep main event loops alive 2026-06-05 09:18:39 +02:00