2016-07-05 76 views
0

我需要編寫一些cpu密集型Android應用程序。我已經編碼的是BigInteger因子,但它佔用了我手機CPU的30-40%。我的手機是六核心,CPU使用率約爲5%的內核和30%的用戶。這對於一個cpu密集型應用程序來說足夠了,還是應該像80-90%那樣很高?它也消耗了260MB內存中大約120MB的內存。這是好的,還是一定很低?Android應用程序需要消耗多少cpu才能達到cpu密集?

+0

CPU密集度是相對於用戶而言的。沒有一個指標可以簡單地說一個應用程序是CPU密集型的。 –

+0

謝謝@Lie Ryan!那麼內存消耗呢? – Goldera

+0

同樣的事情,它取決於手機,應用程序的類型,用戶的個性以及用戶正在做的其他事情。這個問題的原因是什麼? –

回答

0

嗯。這既是一個直截了當的問題,也是一個棘手的問題。首先,30%-40%不是CPU密集型的;實際上,它非常懦弱。我猜測有兩件事情中的一件正在發生:(1)你的應用程序沒有運行足夠的線程來保持所有內核的胖胖和快樂,或者(2)操作系統有一些內置的調控器來阻止任何給定的應用程序拖動打下電話,使它幾乎沒用,給製造商一個非常糟糕的名字。 (順便說一句,我不知道開發者是否實現(2),如果我是設計師,我會的)

您的應用程序是一個符合Android標準的Java應用程序嗎?或者你靠近金屬?

+0

我的應用程序運行不同數量的線程,最多128個線程。是的,它是一個符合android標準的Java應用 – Goldera