饑荒進(jìn)游戲時(shí)outofmemory怎么辦?
當(dāng)JVM啟動(dòng)時(shí),使用由-Xms參數(shù)設(shè)置的內(nèi)存。當(dāng)程序繼續(xù)創(chuàng)建對(duì)象時(shí),JVM開始擴(kuò)展堆內(nèi)存來容納對(duì)象。
JVM也使用垃圾收集器來回收內(nèi)存。
當(dāng)幾乎達(dá)到-Xmx設(shè)置的最大堆內(nèi)存時(shí),如果沒有內(nèi)存分配給新對(duì)象,JVM將拋出它,您的程序?qū)⑹ ?/p>
在拋出OutOfM
java遞歸改為循環(huán)后為什么不會(huì)導(dǎo)致棧內(nèi)存溢出?
這個(gè)問題發(fā)生在幾天后編寫的一段代碼中。大致結(jié)構(gòu)如下:A(){if(){}//遞歸終止條件else(){for(){A()//這里有一個(gè)遞歸。當(dāng)for循環(huán)次數(shù)過多,遞歸終止條件難以達(dá)到時(shí),堆棧內(nèi)存會(huì)溢出}}-if。或者有其他問題,也可以關(guān)注我,私信我。