Creating a threaded version of the Render Engine.
This class contains a thread. Each time a function of this class is called,
we create a lambda function that is put on a queue. The main thread then
executes the functions in order.
In V1, all elements are passed by reference, and the main thread blocks on
the execution of this thread. In the future iterations, the lambda makes
copies of elements that should exist regardless of what happens to the thread
that calls into this thread.
go/speculative-render-engine for more info.
Test: Activate blur. Collect systrace.
Test: Open Chrome. Collect systrace.
Test: atest RenderEngineThreadedTest
Bug: 155929501
Change-Id: I246c6c1abb77a4c96c0867e722757326f8069b16
8 files changed