Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
May be allowed, not will be allowed, apps request a specific amount of time in the background, it's not guaranteed, and only so long as they are actually performing specific tasks using predeclared API, for a set limited amount of requested time, not using several trigger API like updating graphics that will instantly terminate a background app and only so long as a foreground task does not need the resources.

Not only that but when an app requests those specific APIs, Apple will pay closer attention to them in the review process and ensure they abide by their strict guidelines to their use.
 
Did you look at my screen shots of instruments earlier in the thread?
Yeah I just looked at it. Does it relate to what I'm saying though? It looks like you were showing that it has no affect on battery life, I'm talking more about the speed/performance of your phone.

Could you please supply us the objective statistics that lead you to this conclusion?
I say it based on experience, so no. Do you have any stats that show otherwise.
 
Yeah I just looked at it. Does it relate to what I'm saying though? It looks like you were showing that it has no affect on battery life, I'm talking more about the speed/performance of your phone.

What does the milliseconds it takes to release inactive memory have to do with the speed/performance of your phone. A fraction of a second longer on app launch?

I say it based on experience, so no.

As posted before:
https://en.wikipedia.org/wiki/Placebo

Do you have any stats that show otherwise.

You made the claim, it's up to you to support it. Even a theory on why you think it improves performance would be helpful.
 
Except none of those apps are actually consuming any real memory or CPU most likely.


My "running" programs:

Image

Image


What happens when I press home while in FB.

Image

I'd also like to note that Camera or MobileSafari werent listed as running in the activity monitor. They just happened to show there because I had ran them the previous evening and are there as a shortcut.

BTW, the FB app is REALLY sloppily engineered. Some months ago, I've tested its memory usage very thoroughly - see my posts at the JB forum: https://forums.macrumors.com/posts/17349629/

----------

What in iOS 7's updated multitasking makes this invalid?

Not much, given that there is little addition to the multitasking, contrary to the popular belief. See my analysis at https://forums.macrumors.com/threads/1600628/ - generally, Apple's trying to sell their "new" multitasking model as "revolutionary", while it hasn't added much. People not knowing the difference between the new card-based task manager and what multitasking really is really think iOS7 adds true MT, which is in no way the case.

That is, in iOS7 you won't need to close anything manually either.
 
Yeah I just looked at it. Does it relate to what I'm saying though? It looks like you were showing that it has no affect on battery life, I'm talking more about the speed/performance of your phone.

It shows CPU shuts off when you leave the FB app which is what typically relates to bad battery or slow performance on the iPhone. Memory is automatically managed so when your phone needs an extra 120mb, it will close down the oldest used app sending a Memory alert to the app so it can do anything it needs to before it closes and then shuts it down from running processes. Which is nice if the app built in a "remember where I was" kind of feature prior to closing.

You shutting it off manually doesn't give the app you are closing that courtesy so you are likely giving yourself a much worse experience.

But hey, I don't want to use my understanding and expertise on the subject as a way to undercut your impressions of how something works.
 
BTW, guys, let a programmer chime in.

I've played a LOT with memory management in iOS apps. Note that the following applies to all iOS versions between iOS4 and 6 but not necessarily to7 (haven;t tested this under iOS7 yet)

1, generally, when your app is started and there are other apps the user has started previously, you (as a programmer) don't have as much memory as you can have. This means system calls to get the free memory generally return much lower values than you can otherwise have (on a 256Mbyte iPhone 3gs running on 4.x, about 150 Mbyte, for example. Haven't measured this value on newer OS'es; I assume it's somewhat lower).

2, when and only when you start allocating memory (via malloc() or anything similar), does the system start freeing memory.

This is why apps requiring as much free mem as possible require the user to run "warming up" stuff - for example, SnappyCam, which only gets granted the maximum free mem possible after you actively shoot some 3-4 photo burst series. This increasingly frees up memory.

You can also do this from your app as well by continuously allocating memory (calling malloc()) in, depending on how close you are to the "danger zone" (you shouldn't allocate 10 Mbyte when you're very close to the threshold - then, you need to switch back to 1-2 Mbyte allocations) 2-5-10Mbyte until you get a memory warning. This can take some time - for example, on a 3gs to free up the entire 150Mbyte of available RAM takes some 5 seconds.

Unfortunately, there aren't system calls like "now, kill all other tasks and free up as much memory as possible". All you can do is gradually increase the free RAM you have access to for your own app (to, let's stick with SnappyCam, use as a buffer to store intermediate images you shoot to avoid having to write them back to the storage, which would essentially decrease the shooting framerate to 1/5th of the original). This has always been a major problem with iOS programming.

All in all, all this is pretty cumbersome for both the programmer and the user. The former, upon start, can't really know how much memory he can have for allocation; the latter needs to manually run "warming up" initial runs with SnappyCam, for example.)

Feel free to ask me for more info and I can re-run my tests on iOS7 / even publish an updated article on my findings.
 
Who are you "quoting"? Seems from Apple's actual words, they are trying to sell the new multitasking model as "smarter" or "intelligent".

http://www.apple.com/ios/ios7/features/#multitasking

For example here at MR often-quoted iDownloaBlog:

"Rejoice, Apple has brought Multitasking to all apps in iOS7."

http://www.idownloadblog.com/2013/06/10/ios-7-multitasking/

And that's only one example of people (and even bloggers / tech writers) spreading technically absolutely flawed stuff about the "new" MT model.
 
For example here at MR often-quoted iDownloaBlog:

"Rejoice, Apple has brought Multitasking to all apps in iOS7."

http://www.idownloadblog.com/2013/06/10/ios-7-multitasking/

And that's only one example of people (and even bloggers / tech writers) spreading technically absolutely flawed stuff about the "new" MT model.

1) How is that the same as "Apple's trying to sell their "new" multitasking model as "revolutionary", while it hasn't added much."?
2) What was actually "technically absolutely flawed" about the information in the article?
 
1) How is that the same as "Apple's trying to sell their "new" multitasking model as "revolutionary", while it hasn't added much."?

They made an impression to most iOS folks the new version has radically better MT. This is why blogs like iDownloadBlog used superlatives and, again, absolutely flawed sentences like the above.

2) What was actually "technically absolutely flawed" about the information in the article?

The article did explain what the new MT is all about. Too bad it had the first, intro / summary sentence as cited above, which is flawed (FYI: still not all apps are allowed to run in the background, contrary to what the sentence mean to people actually knowing what MT is.). And most people will only check out the intro / summary of articles.
 
They made an impression to most iOS folks the new version has radically better MT. This is why blogs like iDownloadBlog used superlatives and, again, absolutely flawed sentences like the above.

Sounds like you are the one making up superlatives in order to have something to argue with.

FWIW, for my purposes, I do consider the new MT permissions radically better.

The article did explain what the new MT is all about. Too bad it had the first, intro / summary sentence as cited above, which is flawed (FYI: still not all apps are allowed to run in the background, contrary to what the sentence mean to people actually knowing what MT is.). And most people will only check out the intro / summary of articles.

Your grasping at straws. It was explained in the second sentence in the first paragraph. They didn't bury the lead by any stretch of the imagination.

And, yes, the first sentence is correct. Even though you seem to want to make the jump to unlimited background processes. All apps are now eligible to run in background under certain circumstances.
 
And, yes, the first sentence is correct. Even though you seem to want to make the jump to unlimited background processes. All apps are now eligible to run in background under certain circumstances.

Can they for example output to an external monitor via a cabled connection? Of course they can't. Can they record video in the background? Of course they can't. And the list continues. All this has been possible with the JB tools Backgrounder / Background Manager / Quasar for ages. If you JB, that is.

This means your statement "All apps are now eligible to run in background under certain circumstances." is only half the truth. You still aren't allowed to do MOST things people use JB MT hacks for. The new, official MT support only allows for Internet refreshing / content loading, which is only a VERY small subset of what MT could be used for (and is used by JB'ers)
 
Can they for example output to an external monitor via a cabled connection? Of course they can't. Can they record video in the background? Of course they can't. And the list continues. All this is possible with the JB tools Backgrounder / Background Manager.

This means your statement "All apps are now eligible to run in background under certain circumstances." is only half the truth. You still aren't allowed to do MOST things people use JB MT hacks. The new MT stuff only allows for refreshing, which is only a VERY small subset of what MT could be used for (and is used by JB'ers)

Again, you are putting words in Apple's mouth and saying they are wrong. Apple never claimed unlimited background processing.
 
Your grasping at straws. It was explained in the second sentence in the first paragraph.

Was the first sentence flawed? Did it state something absolutely wrong? Yes. And this isn't changed by the fact that readers that did read further could, later, find out "all" doesn't mean "all".

----------

Again, you are putting words in Apple's mouth and saying they are wrong. Apple never claimed unlimited background processing.

Actually, also you stated ("All apps are now eligible to run in background under certain circumstances. ") all apps are eligible for MT. What could you use the new features for if you don't need to fetch stuff from the Net? You can't.

One would expect Apple trying to give us as much freedom and utility as JB tools existing for years (with a decent task manager front-end). Not to mention windowing on the iPad. And what do we get? Some refreshing / Internet content DL'ing support.
 
Was the first sentence flawed? Did it state something absolutely wrong? Yes. And this isn't changed by the fact that readers that did read further could, later, found out "all" doesn't mean "all".

No. It's not "absolutely wrong". You just jumped to the wrong conclusion. "All" meant "all". It just didn't mean "unlimited" liked you hoped for.
 
No. It's not "absolutely wrong". You just jumped to the wrong conclusion. "All" meant "all". It just didn't mean "unlimited" liked you hoped for.

Again, not even basic stuff is allowed in iOS7. Why can't you for example drive an external monitor when running in the background? It'd be essential for people using iPads as for example multimedia sources, driving seat-mounted monitors in cars. Or continue recording video while quickly looking up something.

(Have to leave now, sorry. I have a lot of work to do.)
 
Restarting doesn't kill apps. Whether that matters to anyone or not, I am not sure, but I thought I'd point it out. :)

I'm not sure what you mean. Rebooting your iOS device closes all third-party apps until you manually launch them again.
 
What does the milliseconds it takes to release inactive memory have to do with the speed/performance of your phone. A fraction of a second longer on app launch?
I'm not talking about just launching apps, I'm talking about using apps.

Okay. But no.

You made the claim, it's up to you to support it. Even a theory on why you think it improves performance would be helpful.
You made a claim too about how the os automatically does it. A theory? That it doesn't open up enough memory to allow your experience to be lag-free.
 
Memory is automatically managed so when your phone needs an extra 120mb, it will close down the oldest used app sending a Memory alert to the app so it can do anything it needs to before it closes and then shuts it down from running processes.
In theory. I'm suggesting that this memory management isn't that efficient.

You can also do this from your app as well by continuously allocating memory (calling malloc()) in, depending on how close you are to the "danger zone" (you shouldn't allocate 10 Mbyte when you're very close to the threshold - then, you need to switch back to 1-2 Mbyte allocations) 2-5-10Mbyte until you get a memory warning. This can take some time - for example, on a 3gs to free up the entire 150Mbyte of available RAM takes some 5 seconds.
This is the type of thing I'm talking about.
 
Last edited by a moderator:
I just did it. They are all still there under multitasker, running iOS7 on iPhone 5.

EDIT: In fact the same is true on iOS6 on iPad mini...

And the myth continues! :) What you are looking at is a list of recently used apps. Not a list of open apps.

Check the rest of this thread for multiple explanations of the iOS multitasking model.
 
I'm not talking about just launching apps, I'm talking about using apps.

Sure. But you have no evidence of your claim.

Okay. But no.

Well explained. Thank you.

You made a claim too about how the os automatically does it.

And my claim was supported by multiple posts in this thread.

A theory? That it doesn't open up enough memory to allow your experience to be lag-free.

Hey! You just stole that from Menneisyys2 without understanding it completely.

You probably spend way more time closing apps and waiting for them to reopen unnecessarily than the app spends waiting for more RAM. :)
 
In theory. I'm suggesting that this memory management isn't that efficient.

It's not theory. It's how it technically works and is supposed to work. It's extremely efficient based on my findings. You can force the issue manually for problematic apps but if it's any, it's going to be one of three. Not all. Which is why it's not necessary.
 
Last edited by a moderator:
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.