Jetsam kills WebGL application on iOS

↘锁芯ラ 提交于 2019-12-25 16:51:22

问题


I am currently struggling with memory management inside a webgl application on the web, on iOS only.

I keep getting the following error message :

Application 'UIKitApplication:com.apple.Preferences[0xa7c1]' was killed by jetsam.

I understand that Jetsam is the system process responsible for memory management, but the crash occurs while the browser uses around 25% of the device's RAM, which is not that high. I don't have any other open application while running my webGL content. What I don't understand is what Taun Chapman said :

Jetsam monitors memory use and kills applications which are not good memory citizens. A good memory citizen is an application which is willing to give back memory when asked and does not keep asking for more memory.

Well, the app needs more memory in a short time (when unzipping 3D models using workers), I can't continue my app without it! And it crashed at these particular times.

Moreover, I think I have some memory leaks in my app, according to Chrome DevTools I am currently trying to fix. But the browser itself seems to have some leaks too. Thus, fixing mine will just delay the inevitable.

I know the following question is odd, or inappropriate, but do you know if the jetsam "limit" can be increased ? Or if you can add an exception on the currently running WebGL app ?

For your information, I use the Three.js WebGL library and the zip.js library to compress my 3D models.

Yes, I've already read the following question : Why does simple website crash on mobile (iOS Safari and Chrome, at least)?, but the problem does not come from my CSS.


回答1:


The 10.3.2 version of iOS (released the 15th of May) made Jetsam less aggressive, or at least, the memory is better handled.

https://support.apple.com/en-gb/HT207798



来源:https://stackoverflow.com/questions/44258746/jetsam-kills-webgl-application-on-ios

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!