2016-07-05 44 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