Jetsam真的做了什么?

时间:2013-02-27 21:42:15

标签: ios performance

在几个月前的a question I asked中,我询问是否可以观察到Jetsam对内存使用的影响。我使用乐器回答了我自己的问题,发现被Jetsam杀死的应用程序仍然具有与终止之前相同的内存占用量。

即使在今天,我仍然会在正在运行的任务栏最近使用过的应用列表中看到被抛弃的应用。我没有得到任何性能提升,除非我自己删除它们,即使在Jetsam杀死它们之后。

如果是这样的话,Jetsam的目的是什么,它在做什么(除了杀死应用程序)?我没有看到任何好处。这是一个错误吗?

2 个答案:

答案 0 :(得分:10)

  

即使在今天,我仍然会在正在运行的任务栏中看到被抛弃的应用程序。我没有得到任何性能提升,除非我自己删除它们,即使在Jetsam杀死它们之后。

胡说。没有“正在运行的任务栏”这样的东西。您正在考虑最近使用的应用列表。此栏中存在应用程序并不表示应用程序仍在运行,并且从此栏中删除已杀死的应用程序对性能/内存没有影响。删除应用程序的唯一方法是从这个有益的栏中执行它会杀死应用程序,如果它还在运行。

至于jetsammed应用程序,应用程序在重新启动后将具有相同的内存占用量并不奇怪。应用程序通常是jetsammed,因为它们被暂停,前台应用程序需要更多内存。应用程序是jetsammed的事实并不表示应用程序必然使用了不可接受的内存量。

答案 1 :(得分:0)

事实证明, 当程序离开forground时,它会进入"暂停"州。然后操作系统将为该应用程序保留内存,只要操作系统不需要其它内容,以便程序加载更快。

Jettison以同样的方式工作:它会释放内存......这与清除内存不同。

重要的区别在于,当内存被放弃直到操作系统需要将其用于其他内容时,内存保持不变。 清除是相同的...除了你正在删除内容以及释放内存之外。