Re: [請益] 為何Android不讓使用者自行關程式

看板Android (安卓)作者 (gpc)時間13年前 (2011/04/17 17:18), 編輯推噓24(24016)
留言40則, 27人參與, 最新討論串1/1
※ 引述《dadabo (lego)》之銘言: : 我的疑問是,為何不做個X讓使用者關就好 : 我都是用回上一步來離開程式,可是這種方法還是會關不掉某些App... : 導致有些app一直占記憶體... : 一般人在電腦上都會按X關視窗,沒道理在手機上會忘了做吧? : 還是有哪些我沒考慮到的點? 因為下雨天 所以稍微分享一下 Q1. 為什不做X 讓人關? A1. 因為關了之後,下次要再開,就會變慢. 你應該有這樣的使用經驗吧!第一次開了之後,第二次在開同樣的程式 速度會比較快,這就是沒有把程式關掉,你總不想叫個電話程式出來,都得等個幾秒 Q2. 我按BACK來離開程式,為什會關不掉APP呢? A2. 因為ANDROID的設計是:你按BACK,不會關掉,只會把該APP的閒置等級提高, 之後"如果"記憶體不足要砍程式的時候,他會先砍閒置等級高的. 但如果你記憶體很充足,他就會一直放在裡面,直到你下次點程式出來的時候, 就會快速的從記憶體中恢復過來 Q3. 我用的這個程式很小耶,為什還要保留在記憶體呢? A3. 因為ANDROID的程式都是JAVA,靠著JAVA VM來跑,所以就算你的程式是個hello world 他只要跑起來還是得佔個10MB左右的記憶體,所以快點算算你的記憶體可以跑幾個 程式.複雜一點的程式我想應該也是20~30MB跑不掉. -------------- 那為什麼android不 "設計" 用X來關程式呢? 其實android自己會幫你清記憶體,所以不用太過擔心,電腦上不會幫你清, 跑到最後就跟你說記憶體不足,你得要自己清,但android不會.... 因為在kernel中有一個神祕的模組(?)叫做lowmemorykiller, 看名字就知道是個低記憶體殺手! 他會在你記憶體低於每個值之後,開始砍不重要的程式. 這個值是多少呢? http://0rz.tw/msjTC 看一下kernel的原始碼你可以看到 (55行附近) 大概是64MB他才會開始清理,也就是說 你的手機 要一直"存放"那些沒再用的程式 直到你的記憶體 低於64MB之後,他才可能會開始清理 仿間有許多 MinFreeManager 之類的 軟體 他就可以幫你調那些"閥值" 使得android的linux kernel 幫你三不五時就清一下記憶體 讓你保有"空曠"的記憶體空間 ------------------------------------------------ 但我是覺得 不管怎麼清都沒什作用...買台大記憶體的,比較實在啦 QQ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.44.10.183

04/17 17:24, , 1F
我比較好奇LMK的值設高 到底是有效率還是無效率
04/17 17:24, 1F

04/17 17:24, , 2F
因為一下子就達到kill的值 結果一直反覆的kill
04/17 17:24, 2F

04/17 17:24, , 3F
以及載入...這樣好像更耗資源 囧
04/17 17:24, 3F

04/17 17:25, , 4F
印象中原生的Android那個值是32MB
04/17 17:25, 4F

04/17 17:26, , 5F
milestone淚目…
04/17 17:26, 5F

04/17 17:28, , 6F
看起來是64M http://0rz.tw/j7aky
04/17 17:28, 6F

04/17 17:30, , 7F
以前就是64MB嗎@@? 我之前去XDA那邊看到是32MB 囧
04/17 17:30, 7F

04/17 17:31, , 8F
感覺是沒實際作用 只是數字多寡而已XD
04/17 17:31, 8F

04/17 17:31, , 9F
可能之後的kernel有改了 google目前的kernel是設64
04/17 17:31, 9F

04/17 17:32, , 10F
很多教學文章會叫你設96的樣子 然後就會剩下很多記憶體?
04/17 17:32, 10F

04/17 17:32, , 11F
64MB對於RAM只有256的應該很淚目...
04/17 17:32, 11F

04/17 17:33, , 12F
96我自己覺得太高了...除了HTC有RAM768MB以外的機種
04/17 17:33, 12F

04/17 17:33, , 13F
應該用起來會偶爾小卡吧..三不五時就在清RAM
04/17 17:33, 13F

04/17 17:33, , 14F
有解惑有推XD
04/17 17:33, 14F

04/17 17:34, , 15F
說的讓我這白痴都看得懂~大堆^^ 所以..還是存錢換手機
04/17 17:34, 15F

04/17 17:37, , 16F
不過這問題應該快被淡忘了 RAM 1GB機種快出阿~~
04/17 17:37, 16F

04/17 17:41, , 17F
看到最後一句還以為 台大有出記憶體歐...囧
04/17 17:41, 17F

04/17 17:55, , 18F
請問可以讓我保存到個版嗎
04/17 17:55, 18F

04/17 17:56, , 19F
請問現在記憶體最大的HTC機種是哪台呢?
04/17 17:56, 19F

04/17 18:03, , 20F
回樓上的樓上 可以,目前DHD就很大了
04/17 18:03, 20F

04/17 18:08, , 21F
DHD,IS跟DS都是768mb RAM
04/17 18:08, 21F

04/17 18:16, , 22F
是「閾值」,不是「閥值」= =
04/17 18:16, 22F

04/17 18:22, , 23F
XD
04/17 18:22, 23F

04/17 18:26, , 24F
喔喔,是GPC大耶
04/17 18:26, 24F

04/17 19:05, , 25F
簡單講 你砍了 它還是會跑出來 到不如不要砍 還能省電
04/17 19:05, 25F

04/17 19:45, , 26F
大推阿!! 可以請版主m了啦!! 感謝解惑...
04/17 19:45, 26F

04/17 19:56, , 27F
推 知識plus! 這篇該m了
04/17 19:56, 27F

04/17 19:57, , 28F
下一次要換就是1g的機種了= =
04/17 19:57, 28F

04/17 20:36, , 29F
gpc大是我們HD2用戶的神 m(_ _)m
04/17 20:36, 29F

04/17 20:39, , 30F
下一次要換就是1G的機種了!
04/17 20:39, 30F

04/17 20:52, , 31F
GPC大大耶,久仰久仰!
04/17 20:52, 31F

04/17 21:36, , 32F
這麼好的說明,一定要推的!
04/17 21:36, 32F

04/17 22:25, , 33F
好文推!!!
04/17 22:25, 33F

04/17 22:52, , 34F
推薦這篇文章~
04/17 22:52, 34F

04/17 23:04, , 35F
推一個!
04/17 23:04, 35F

04/18 00:13, , 36F
謝謝 解惑了
04/18 00:13, 36F

04/18 00:35, , 37F
HD2的神 GPC大大太屌了
04/18 00:35, 37F

04/18 09:32, , 38F
有神快拜 m(_ _)m
04/18 09:32, 38F

04/18 19:10, , 39F
感恩推
04/18 19:10, 39F

04/20 20:30, , 40F
賺業推!!
04/20 20:30, 40F
文章代碼(AID): #1Dgh1ZEy (Android)
文章代碼(AID): #1Dgh1ZEy (Android)