[
https://issues.apache.org/jira/browse/CB-13559?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16248055#comment-16248055
]
Suraj Pindoria commented on CB-13559:
-------------------------------------
Ok cool, I'll take a look into this.
> Poor performance and crashes marshalling large ArrayBuffers from JS to Native
> side on iOS
> -----------------------------------------------------------------------------------------
>
> Key: CB-13559
> URL: https://issues.apache.org/jira/browse/CB-13559
> Project: Apache Cordova
> Issue Type: Bug
> Components: cordova-ios
> Affects Versions: [email protected], [email protected], cordova-ios 4.5.0
> Environment: iOS 10.3 Simulator
> Using cordova-plugin-wkwebview-engine
> Reporter: Tim Hambourger
> Assignee: Suraj Pindoria
> Priority: Critical
> Attachments: iOS Exec timeline.png
>
>
> I'm doing performance analysis on an application that's attempting to write
> an approx. 10 MB Blob to disk using the File plugin. The uint8ToBase64
> function called by iOSExec looks like a particular bottleneck. I'm seeing
> large memory increases followed by GCs taking approx 1.5 secs. The attached
> screenshot has a typical Safari timeline.
> After some initial testing, it looks like re-implementing uint8ToBase64 using
> String.fromCharCode and window.btoa, rather than string appending, might
> yield some improvements. Some alternate implementations at
> [https://github.com/github-tools/github/issues/137] and
> [https://stackoverflow.com/questions/9267899/arraybuffer-to-base64-encoded-string].
> Is this something you would consider taking a look at? We're also weighing
> strategies to reduce our file size and the frequency of our writes, but a
> platform-level fix would be a huge help.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]