Skip to content

ASCollectionNode BatchUpdates are slow #93

Description

@stapleup

Hi, We are experiencing some very weird behaviour where ASCollectionNode batchUpdates take 4-5 seconds to complete and during that time our UI is completely blocked (We are using the version 2.3 of Texture). We took the ASDKGram example and added a content view screen (users can click on an item and get to a screen where content is displayed in full screen, they can like a content and the data is updated in current and previous controllers). On most recent iOS version the lag is very little, but it is still noticeable, on an iPhone 5S running iOS 8, the batch updates take a while to complete and during that time the UI is completely unresponsive.

We initially thought that it could be related to how we were handling the whole process of inserting and deleting rows, but it appears even calling the function with no updates is causing the delay.

 collectionNode.performBatch(animated: false, updates: {
            
}, completion: { completion in
  
})

By using the time profiler, it appears that ASSubclassOverridesSelector is the one taking up most of the time when the performBatch is called.

Any help in this regard would be helpful because this is the only thing causing lag in whole application as rest of the app runs smoothly thanks to AsyncDisplayKit / Texture.

Regards

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions