求大神,c++的問(wèn)題
為什么說(shuō)無(wú)限循環(huán)會(huì)吃掉內(nèi)存, 定義的變量不就占據(jù)幾個(gè)字節(jié)嗎, 循環(huán)一次又一次又不用保護(hù)現(xiàn)場(chǎng)
又不是遞歸,需要保護(hù)現(xiàn)場(chǎng), 占據(jù)內(nèi)存指數(shù)級(jí)增長(zhǎng)
為什么說(shuō)無(wú)限循環(huán)會(huì)吃掉內(nèi)存, 定義的變量不就占據(jù)幾個(gè)字節(jié)嗎, 循環(huán)一次又一次又不用保護(hù)現(xiàn)場(chǎng)
又不是遞歸,需要保護(hù)現(xiàn)場(chǎng), 占據(jù)內(nèi)存指數(shù)級(jí)增長(zhǎng)
舉報(bào)
2017-03-26
本質(zhì)上所有的操作系統(tǒng)都是一個(gè)死循環(huán),不停的接收以及響應(yīng)用戶(hù)的處理和給予反饋
真正的問(wèn)題在于要分析清楚你所需要的所有資源的生命周期,包括內(nèi)存的申請(qǐng)和釋放,外設(shè)的創(chuàng)建和銷(xiāo)毀等等。只要是你申請(qǐng)的資源,你必須確認(rèn)他能夠及時(shí)正確的得到銷(xiāo)毀。
還有一點(diǎn)是既然死循環(huán)必須要考慮何時(shí)和怎樣釋放CPU,例如利用信號(hào)量等待將當(dāng)前任務(wù)/進(jìn)程掛起,或者簡(jiǎn)單的利用wait/sleep之類(lèi)函數(shù)主動(dòng)釋放。