我试图更好地了解ionic2
和ionic3
。
垃圾收集如何在 ionic 系统中工作?
就像在这张图片(source)中看到的:
进入新页面时,某些内存会变为G.C。但是,内存仍然比任何视频播放之前都高得多。
最佳答案
好吧,我来试试看:
ngOnDestroy()
。作为应用程序开发人员,这种方法为什么对您很重要?因为它使您有机会清理自己的身后。在销毁组件之前调用此方法,这是什么意思?您不再需要分配的对象,数组,视频元素(设置src=''
然后调用load()
)等,就可以释放内存。 This和this是有关如何释放内存的不错的读物。但是,正如onDestory()
的docs所述,您只需要释放自动GC无法清除的内存(订阅,媒体元素等)。这使我们更上一层楼:delete
关键字为GC显式标记一个对象。下图显示了标记和清除过程:Image taken from this article, it explains how javascript memory management works in very great detail, I strongly recommend reading it.
关于ionic-framework - ionic 2/ ionic 3-垃圾收集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46238634/