Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Sure. For example, any remote desktop style application that connects to other computer and needs to stay operational in order to maintain connection. No help from OS here.

And why are you certain that this can't be done with the new APIs? It seems to me that a couple of them could be used that way. Every single process going into the background doesn't always pause.
 
Sure. For example, any remote desktop style application that connects to other computer and needs to stay operational in order to maintain connection. No help from OS here.

Why does it need to stay connected when you aren't using it, other than to avoid having to reconnect when you switch back?
 
Why does it need to stay connected when you aren't using it, other than to avoid having to reconnect when you switch back?

So that I could multitask too. For example if I am running something remotely, I might want to browse Intenet while the remote task progresses. I would switch back and forth periodically to check the progress. This scenario probably is not gone work.
 
After this comment I have to say: you have no idea of what multitask is.

That is real multitask, is just optimize. The OS will run only the process that you actually need in your background, and freeze what you NOT need.
If you want something that you not need to run in the bg just to consume battery and performance, well that is just not clever.


My bad. You see in my world, you know, I'd have an application process something in the background while I work on something in the foreground simultaneously. But no, that's not multitasking - that's just crazy fantasy talk. 'Not clever' as you put it.
 
But his comment about that a user shouldn't ever see a task manager is rhetoric. Why? Because to open/close programs, on OS 4.0 you still have to double tap the home screen which brings up running apps and then hold down the icon to get the red x and then remove it from the multitask "dock"
It's not because, you don't have to remove the app from the multi-task bar. You don't ever need to shutdown the app.
 
My bad. You see in my world, you know, I'd have an application process something in the background while I work on something in the foreground simultaneously. But no, that's not multitasking - that's just crazy fantasy talk. 'Not clever' as you put it.

So.. Pandora keep streaming music, TomTom keep giving direction, Skype keep let you talk and receving other calls. This is not multitasking? This is not some application processing in the background while you are doing something else?

Let's put it in another way, because otherwise we are not getting anywhere.

What benefit will you get by processing everything an app has to process that there isn't in the way Apple is setting on OS4? Maybe there's something I am missing.
 
So.. Pandora keep streaming music, TomTom keep giving direction, Skype keep let you talk and receving other calls. This is not multitasking? This is not some application processing in the background while you are doing something else?

Let's put it in another way, because otherwise we are not getting anywhere.

What benefit will you get by processing everything an app has to process that there isn't in the way Apple is setting on OS4? Maybe there's something I am missing.

It's a limited multitasking. I call it "castrated multitasking".
 
I still want to know how the OS decides which background task(s) to kill off automatically when it needs more resources.

I want to be the one to decide which background apps are most important to me.

(Assuming it does this. Haven't had time to do much lately except read forums, which aren't exactly gems of knowledge. If it doesn't do this, please correct me. Thanks!)
 
You see in my world, you know, I'd have an application process something in the background while I work on something in the foreground simultaneously.

You must be completely ignoring the way it will work. You can have tasks processing in the background without being paused. Read up on the APIs.

It's a limited multitasking. I call it "castrated multitasking".

So basically, you don't actually know what's possible yet, but since it's not the way everyone else does it, you say it sucks? That makes sense.
 
So that I could multitask too. For example if I am running something remotely, I might want to browse Intenet while the remote task progresses. I would switch back and forth periodically to check the progress. This scenario probably is not gone work.

Right, and like I said, why does this require keeping the remote connection open other than to avoid a slight delay when reconnecting? The actual task you are running is remote, so it will progress regardless of whether you actually have a connection.

You must be completely ignoring the way it will work. You can have tasks processing in the background without being paused. Read up on the APIs.

Other than the special tasks (audio, voip, gps), the system doesn't guarantee an unlimited amount of time for a background process to do something. So while a file upload might be able to complete or something like that, you cannot indefinitely keep a connection open or do any other task that lasts too long.
 
It amazes me that nerds get multitasking yet they are trying hard to convince themselves it didn't happen. :confused:
 
Other than the special tasks (audio, voip, gps), the system doesn't guarantee an unlimited amount of time for a background process to do something. So while a file upload might be able to complete or something like that, you cannot indefinitely keep a connection open or do any other task that lasts too long.

Even so, most common usage scenarios seem pretty well covered when weighed against battery life. Most of the complaints I've seen have been more hypothetical than about common tasks.

The methods they are using in 4.0 seem far better suited to a mobile device than giving all tasks the ability to run constantly in the background.
 
(...)

What benefit will you get by processing everything an app has to process that there isn't in the way Apple is setting on OS4? Maybe there's something I am missing.

It's a limited multitasking. I call it "castrated multitasking".

This doesn't explain anything.

I want you to explain the benefits of your "true" multitasking and the side effects of the "castrated" multitasking.

I still want to know how the OS decides which background task(s) to kill off automatically when it needs more resources.

I want to be the one to decide which background apps are most important to me.

(Assuming it does this. Haven't had time to do much lately except read forums, which aren't exactly gems of knowledge. If it doesn't do this, please correct me. Thanks!)

The OS doesn't decide anything. The developer implement in the App what are the main functions the App needs to run in the background by using the 7 types of multitasking iPhone OS 4 provide.
 
This doesn't explain anything.

I want you to explain the benefits of your "true" multitasking and the side effects of the "castrated" multitasking.

He's right it's not real multitasking, its the same as on Android there are certain apis that run in the background all the time so Pandora can continue to stream music, email can work etc but you can still only have one program open on the screen at a time.

For instance real multitasking would allow you to have multiple apps open at the same time on the screen, you could have two browsers side by side for quoting posts, pages and numbers running side by side, Itunes and the browser open side by side to browse apps that someone might recommend on a forum.

It's not a problem on a phone as the screen is too small to take advantage of multiple apps at the same time, this is actually the best way to do it...it works great on Android never really had any issues with it other than the occasional badly coded app that stays running in the background and drains the battery.

However on something with a bigger screen like the iPad it would be nice to have a real multitasking system. Nothing is saying we won't have it on the iPad though, they only discussed specific features for the iPhone nothing was really mentioned with regard to iPad multitasking so it could be totally different than whats on the iPhone we will just have to wait and see.
 
It amazes me that nerds get multitasking yet they are trying hard to convince themselves it didn't happen. :confused:

+1

PS: if anyone on this thread speaks English, can you say if you can run an app in the background; say one that has an alarm clock or something?
 
App switcher = task manager.

You can even close apps by pressing the minus icon in the upper right corner of the app picture.
 
For instance real multitasking would allow you to have multiple apps open at the same time on the screen, you could have two browsers side by side for quoting posts, pages and numbers running side by side, Itunes and the browser open side by side to browse apps that someone might recommend on a forum.

That has less to do with multitasking and more to do with a windowed interface.
 
What I'd love to see is a new iMac where you grab the screen off the stand and walk away with it. As soon as it is undocked from its stand, it runs iPad OS (probably in a virtualbox). When you dock it, you get keyboard, mouse and OS X to your heart's content. I'm really excited about the future that iPad is opening up for us.


I don't know if anyone has mentioned this to you in this thread but Lenovo already has a laptop that does this. Docked it runs Windows 7, grab the screen off the "dock" and it runs a Linux variant or custom OS, can't remember which.
 
+1

PS: if anyone on this thread speaks English, can you say if you can run an app in the background; say one that has an alarm clock or something?

There can be apps that schedule local notifications that achieve the effect of an alarm clock running, although the app will not actually be doing so.

When you create the alarm, the app will schedule it with the OS, and then the app will be terminated completely when it leaves the foreground (i.e. when you return to the home screen or switch to another app). The OS then keeps track of the alert and what sound to play, etc. independently of the app.
 
Task Manager = App switcher for the last time. Apps may or may not use background APIs while in the sleep state so take Pandora for example. You can hear the music in the background. If you go to the App switcher and kill the app, you will cease to hear music. Therefore you can kill that app and free up resources.

Only Apple processes run in the background. The app switcher does not kill apps in the background, because there are no apps running in the background, with the possible exception of the feature that allows the completion of a task.

The background features such as music streams, location services, and VOIP are all just threads in an Apple process. They are not background processes of the app.

Oh and the system handles resources automatically means if there isn't enough memory the app will close.

The app is already closed if it is in the background. The saved state for fast switching of the least recently used app would be removed from memory if more RAM was needed by the system.

Depends on the app. An app that doesn't use any of the 7 background APIs is not doing anything and is just asleep. If it DOES use any of those APIs, it most certainly is running when not in the foreground. (At those points when the APIs give the app control via a callback.)

See above. The app is not running when not in the foreground, with the one possible exception.

An app that doesn't use any of the 7 background APIs is quit completely like the current system when you leave the app.

App switcher = task manager.

You can even close apps by pressing the minus icon in the upper right corner of the app picture.

Again, pressing the minus icon does not close the app. It simply removes it's saved state from memory.
 
Task Manager: "Let me sort this list by CPU usage so I can figure out which app is misbehaving so I can kill it."

Dock Manager: "I don't need this app here on my list of most recently used apps; let me remove it."
 
Right, and like I said, why does this require keeping the remote connection open other than to avoid a slight delay when reconnecting? The actual task you are running is remote, so it will progress regardless of whether you actually have a connection.

First of all, the remote task may or may not proceed if the connection is lost. If it's something like VNC, it will proceed. If it's something like ssh, it'll stop. Besides, if the application works in the background, when I switch to it, I see the progress immediately. If the application is suspended, when I switch to it, in the best case scenario, it is restarted (delay) then reconnects (hopefully without asking me to reenter the password) then gets the update. It takes time. I have to wait. I loose productivity.
 
Here is the bottom line for me.

For all the people complaining about this multi-tasking functionality, please cite specific examples of what you would want to do, and then everyone can discuss how they might or might not be possible given the tools available in 4.0, or how it might be unnecessary to begin with or a piece that is missing.

It is pretty clear that Apple designed this to address the huge majority of needs for people who might want to use multi-tasking. I have always said that Apple would have a limited or controlled Multi-Tasking. I think once again they have come up with an excellent solution that allows them to meet their goals.

But instead of just ignorantly attacking the implementation, lets use specifics. Right now on my mbp I have excel open and it has been open for like 6 months. Once every 3 months I go to it to look at something. So even though I am technically multi-tasking with excel in the background on my mbp, the reality is this new design on 4.0 will allow the exact same sort of behavior.

One person did mention using a remote desktop type of service and going away. The downside would be having to reconnect, potentially, every time you flipped back. Although I suspect depending on the software and the author this is not 100% true. It may be possible for this to be designed in such a way where it would be able to essentially re-connect quickly when you switch and only timeout/log off given certain parameters. I certainly don't know because I am not an app developer.

Anyways, more specifics and less word play.

Please explain specific programs or tasks you want to be able to do and why you would want to be doing them while doing something else, and perhaps we can agree on some holes in the multi-tasking.

I believe it is Apple's goal to cover as many possible contingencies as they can without sacrificing too many resources. So obviously there may be things they missed.

However this discussion is just a semantical game of duck-duck-goose as people chase each other around.

Don't just say you want to be able to run anything in the background. Be pinpoint specific. Like I mentioned a lot of stuff we "multi-task" on our regular computers are actually handled fine with fast-task switching.
 
Wow, the amount of misinformation in this thread is pretty astounding.

I'm about 99% certain I have this figured out, based on the keynote demo and the info posted on various blogs since. Basically, iPhone OS 4 no longer quits an app as soon as the user puts it into the background. This is that fast app switching feature, which nobody seems to understand is related to multitasking, but I'm pretty sure it is. What iPhone OS 4 does instead of quitting a background app is, it suspends it. This means the app is still loaded. This is why you can instantly switch back to it.

Here's where things diverge from desktop-style multitasking, though: the scheduler doesn't give background apps any CPU time by default. The scheduler only gives background apps CPU time if they explicitly ask for it using one of the relevant APIs, and then only as needed to do the kind of background processing necessary to the task the app has told the system it wants to perform.

So, what happens then depends on what the app has told the OS about what it wants. In some modes, the app gets suspended, but in response to certain events, like the user's location changing, it automatically gets unsuspended, and the OS notifies it of the location change and gives it some CPU time to execute whatever code it wants run to deal with that change.

In some other modes, like with background audio, the app just plain runs in the background, at least from what I can see. You could, as far as I can tell, just declare your app plays background audio even if it doesn't, and have it do whatever sort of processing it wanted to in the background. There's nothing technically preventing this. Though you'd be cruising for an App Store rejection, I'm sure.

And then there's the "I need more time" mode, in which apps that would otherwise quit can tell the OS they need extra time to finish something up. In this case, the app can do whatever it likes -- until it runs out of time, at which point the OS will ask it to quit, and then kill it if it doesn't. According to the article on Engadget (IIRC) apps can ask for up to five minutes.

So, there's quite a lot of "real multitasking" in here. Developers just aren't allowed to use it for whatever they want for arbitrarily long periods of time, because Apple believes that would kill the battery and result in sluggish performance.

And all of these restrictions are deliberate, not due to the underlying technical implementation of the OS, which means that as the hardware gets more powerful, Apple can lift any of them that it's appropriate to lift at any time.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.