Description
We use an inner loop for CONFLATE_STALE_RENDERINGS
and DRAIN_EXCLUSIVE_ACTIONS
(here) to apply multiple actions in one render pass (or in the case of CSR, in one 'UI update').
When the runtime is executed on the Main.immediate
dispatcher, we handle one side effect of a worker update, and then render and try to process actions before the other workers (and their side effects underneath) have been able to be dispatched in order to send the other actions that need processing to the action sink.
This means that the optimizations like CONFLATE_STALE_RENDERINGS
are much less effective with the Main.immediate
dispatcher as we are not able to populate the actions that need processing as fast as we can process them.
We need to fix that! We have enshrined that desire in a currently ignored android test that uses the Main.immediate
dispatcher.