You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
When a component is inserted into the page, especially in the case of ListView, the renderer will have multiple calls of insertChild, which creates additional overhead and may have a negative impact on FPS.
Describe the solution you'd like
Merge multiple consecutive createNode operations while keeping the order of createNode updateNode and deleteNode unchanged.
Describe alternatives you've considered
When triggering node operations, first push the nodes which will be updated into the array, then separate and integrate the nodes in the microtask stage. Finally, perform a batch insert operation on the integrated node array
Additional context
In the case of sliding ListView (Statistics from perfdog):
FPS
Before
Merged
Avg
48.8
52.15
Max
57.9
58.9
The text was updated successfully, but these errors were encountered:
But could you have an investigation for the optimization patch? Why merge the insertChild will makes the fps higher?
The points:
There is a similar queue like __batchNodes in the native, the UIManagerModule operations will append actions into the queue, then flush when endBatch executed. In fact, hippy-react should submit the UI operations as soon.
The fps should be affected by the native, not hippy-react.
Is your feature request related to a problem? Please describe.
When a component is inserted into the page, especially in the case of ListView, the renderer will have multiple calls of insertChild, which creates additional overhead and may have a negative impact on FPS.
Describe the solution you'd like
Merge multiple consecutive createNode operations while keeping the order of createNode updateNode and deleteNode unchanged.
Describe alternatives you've considered
When triggering node operations, first push the nodes which will be updated into the array, then separate and integrate the nodes in the microtask stage. Finally, perform a batch insert operation on the integrated node array
Additional context
In the case of sliding ListView (Statistics from perfdog):
The text was updated successfully, but these errors were encountered: