mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
After pre-roll we know if there have been any mutations made to the IOS embedded UIViews. If there are any mutations and the thread configuration is such chat the mutations will be committed on an illegal thread (GPU thread), we merge the threads and keep them merged until the lease expires. The lease is currently set to expire after 10 frames of no mutations. If there are any mutations in the interim we extend the lease. TaskRunnerMerger will ultimately be responsible for enforcing the correct thread configurations. This configuration will be inactive even after this change since still use the same thread when we create the iOS engine. That is slated to change in the coming PRs.
Flow
Flow is a simple compositor based on Skia that the Flutter engine uses to cache recoded paint commands and pixels generated from those recordings. Flow runs on the GPU thread and uploads information to the GPU.