Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/105.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我可以为所有用户假设相同iOS设备的相同应用速度吗_Ios_Xcode_Testing_Memory_Cpu - Fatal编程技术网

我可以为所有用户假设相同iOS设备的相同应用速度吗

我可以为所有用户假设相同iOS设备的相同应用速度吗,ios,xcode,testing,memory,cpu,Ios,Xcode,Testing,Memory,Cpu,我找不到这个问题的答案,所以我希望答案是肯定的 我可以简单假设一下,如果我在配备iOS 6.0的iPhone 5上测试我的应用程序,那么所有使用配备iOS 6.0的iPhone 5的用户都将具有相同的性能,因为所有应用程序都是在筒仓中工作的,并且在前台都分配了特定的内存空间和CPU利用率 公平的假设 谢谢在大多数情况下都是真的。可能存在ofc的例外情况,例如: 如果一个用户打开了如此多的应用程序,几乎达到了设备的内存限制 网络问题:您正在使用良好的wi-fi进行测试,但用户的wi-fi信号较差

我找不到这个问题的答案,所以我希望答案是肯定的

我可以简单假设一下,如果我在配备iOS 6.0的iPhone 5上测试我的应用程序,那么所有使用配备iOS 6.0的iPhone 5的用户都将具有相同的性能,因为所有应用程序都是在筒仓中工作的,并且在前台都分配了特定的内存空间和CPU利用率

公平的假设


谢谢

在大多数情况下都是真的。可能存在ofc的例外情况,例如:

  • 如果一个用户打开了如此多的应用程序,几乎达到了设备的内存限制
  • 网络问题:您正在使用良好的wi-fi进行测试,但用户的wi-fi信号较差,或者使用3G-2G
  • 用户有一个越狱的手机,并有自定义操作系统设置:超频和其他什么不。。。一些应用程序限制其他应用程序cpu内存网络使用等

虽然为他们分配了自己的内存空间,但这并不意味着他们可以访问所有可用的内存。很好地描述了问题:

可用的可用内存量与应用程序的相对性能之间存在直接关系。可用内存减少意味着系统更可能无法满足未来的内存请求。如果发生这种情况,系统始终可以从内存中删除挂起的应用程序、代码页或其他非易失性资源。然而,从内存中删除这些应用程序和资源可能只是一个临时修复,特别是在不久之后再次需要它们的情况下。相反,首先要尽量减少内存使用,并及时清理内存


另外,磁盘访问和CPU访问也取决于后台的情况。一个用户可能有多个邮件帐户同步、通知触发、网络信号搜索和一大堆其他东西,所有这些都可能影响性能。如果您正在运行到性能极限的情况下,最好看看您可以在哪里调优应用程序

因此,考虑到内存和CPU可能会受到设备上运行的其他应用程序和线程的影响,这里推荐的做法是:A)构建应用程序以动态检查这些问题并动态调整某些算法,或B)将应用程序内存使用和CPU使用优化到n度。就个人而言,我会选择选项B,因为你永远不知道何时会出现内存不足的情况。还可以充分利用操作系统提供的内存警告(didReceiveMemoryWarning)来进一步优化计算。我建议先正常构建应用程序,然后根据需要进行优化。在我看来,未成熟的优化会让它变得更加困难。另外,请尝试在稍微低端的设备(如iPhone 3GS或iPhone 4)上开发,因为如果你的应用在这些设备上表现良好,那么它在iPhone 5GS上的运行应该会更加顺畅。对于didReceiveMemoryWarning,是由于我的应用程序内存泄漏/使用导致内存警告,还是由于用户在后台运行多个应用程序,而我的应用程序请求的内存超过可用内存而导致该警告?我找到了关于didReceiveMemoryWarning的上一个问题/评论的答案。这里是链接