某個項目中,部分頁面使用了RN進行開發(fā)。預(yù)加載這些就不提了,就是正常的init一個RCTView這些流程去加載的,但是項目總發(fā)現(xiàn),RN返回到原生界面的時候,內(nèi)存不釋放,導(dǎo)致多次進出RN界面的時候,內(nèi)存一直上漲沒下降。
后來查看了相關(guān)代碼,發(fā)現(xiàn)RCTBridge中有個invalidate可以釋放RN頁面中的內(nèi)存,親測,返回后,內(nèi)存大小回到剛進RN頁面。如果沒有采取預(yù)加載這些的話,沒什么大問題,如果緩存了bridge或者view的話,需要針對invalidate后重新初始化即可。

內(nèi)存釋放