Live data from Hacker News

Why the iPad and the iPhone don't support multitasking

blog.rlove.org

31–40 of 65 posts

Re: Why the iPad and the iPhone don't support multitasking

#31
Apple says they do not support multitasking because it is a hamper to stability and a drain on battery life. That clearly isn’t true—the iPad has plenty of processing power and battery capacity. Rumor is that Apple is going to add multitasking in a future OS release. This rumor likely is true. Is Apple somehow going to make background applications not consume any battery? Of course not. These excuses are straw men.

Actually this argument is a straw man. Apple can't make background processes run for free contrary to the laws of thermodynamics. However they can limit the resources they can use through the right API. (Register functions with realtime constraints, and request a "level of service.")

Re: Why the iPad and the iPhone don't support multitasking

#32
post #22
post #12

I would be more than happy with no multitasking at all with one exception: sms. And I'm pretty sure that if I include another two apps (safari and mail) on my exception list most people would be okay without multitasking. I don't need a window manager, I need to focus on the app I'm using and the ability to reply (or send) sms and mails and check something on the web without quitting the current app.

There are a range of applications, including highly useful ones, that simply needs multi-tasking. Anything that is time based (think calendars, alarm clocks, etc...) really need multi-tasking to work correctly. A host of location aware applications really need multi-tasking to work effectively. I get Apples position. The iPhone is the spiritual successor to the PalmOS. It looks, feels, and works very similarly to it.…

There are a range of applications, including highly useful ones, that simply needs multi-tasking. Anything that is time based (think calendars, alarm clocks, etc...) really need multi-tasking to work correctly. A host of location aware applications really need multi-tasking to work effectively.

Very few apps need completely open ended multitasking. Most apps need very specific capabilities. An API for registering time limited functions with timing, location, and other services would take care of 90% of the needs out there.

Re: Why the iPad and the iPhone don't support multitasking

#33
post #13

Earlier quoted context omitted.

If I leave an app running in the background that keeps the net connection open on my Nexus One, the battery goes from 100 to 0 in about 5 hours.

I'd bet that app was poorly written and doing something else in the background. An app that is just listening for data from an open connection should be using roughly zero CPU. But we'll try science; I've signed into AIM on my Nexus One and left it running in the background. The battery is at 81% now, I'll report back in an hour.

I'd bet that app was poorly written and doing something else in the background. An app that is just listening for data from an open connection should be using roughly zero CPU.

It would be too much work to vet every app for good concurrent programming. It's a much better idea to disallow it and add an API with resource controls later. This is the only way to protect users from resource hog apps.

Re: Why the iPad and the iPhone don't support multitasking

#34
post #30

Earlier quoted context omitted.

77% after an hour.

Sign in with the connection currently using WiFi instead of GPRS/3G, and it will keep the WiFi hardware on, which is what kills it. There is no way for a normal user to know that they need to open new, persistent connections over a connection type that uses the cellular modem instead of the WiFi. And Android defaults to using WiFi for new connections if the WiFi hardware is powered on and connected to a network. The…

I was signed in using WiFi, and I normally have WiFi enabled all the time and get over 24 hours of battery life. Maybe some wireless chipsets suck too much power, but it doesn't appear to be a problem on the N1.

Re: Why the iPad and the iPhone don't support multitasking

#35
post #27

The only issue I take here is the iPhone is supposed to not need an instruction manual, everything is supposed to be intuitive. Adding multitasking like the Android means every user becomes an accountant keeping track of what's running and what should be killed. Activity or task managers are most definitely not intuitive. Most apps don't have any business running in the background, saving and resuming states seems to…

The big issue is that it imposes a high mental cost for switching between applications. If you're browsing on Mobile Safari and you want to look up something in another app, you generally wont, because by the time you get back to Safari you may have lost the page you were visiting and in any case the startup times can be pretty atrocious. On the Pre, which has the best multi-tasking implementation I've seen, these so…

Which is why Safari IS actually multitasking. You can leave it, launch another app, go back to it and be right back where you are. Sometimes Safari doesn't quit and you're back in a millisecond. Other times the OS closes the browser in the background, and you will have to wait a few seconds while Safari reloads the page you were visiting.

It's surprising how few people realize that the built-in apps (Mail, iPod, SMS etc) run perfectly in the background. The lack of multitasking is limited to 3rd party apps, which helps explain why most iPhone users never complain too much about the lack of real multitasking.

Re: Why the iPad and the iPhone don't support multitasking

#36
post #35
post #27

Earlier quoted context omitted.

The big issue is that it imposes a high mental cost for switching between applications. If you're browsing on Mobile Safari and you want to look up something in another app, you generally wont, because by the time you get back to Safari you may have lost the page you were visiting and in any case the startup times can be pretty atrocious. On the Pre, which has the best multi-tasking implementation I've seen, these so…

Which is why Safari IS actually multitasking. You can leave it, launch another app, go back to it and be right back where you are. Sometimes Safari doesn't quit and you're back in a millisecond. Other times the OS closes the browser in the background, and you will have to wait a few seconds while Safari reloads the page you were visiting. It's surprising how few people realize that the built-in apps (Mail, iPod, SMS…

But Safari being multitasking only solves the "browsing -> other -> back to browsing" case, right? "Something else -> Safari -> back to the first something else" needs the something else to be multitasking enabled or good at storing its state.

Trying to predict what the users will and won't ever need to switch to and from and back to again is a crap shoot in general. Sure one can get it right much of the time, but why not just suck it up and make the overall solution better so there aren't those cases where one guesses wrong.

From the outside, this feels like a bizarre, "accept no criticisms of an Apple product as valid" kind of thing. Stuff like Browser Duo and mini apps make it clear that the longer Apple doesn't solve this in general, the more other developers will put together "do x and y at the same time" applications. Does it really seem better to have these kludges than a general solution?

Re: Why the iPad and the iPhone don't support multitasking

#37
post #18

> "Both the iPad and iPhone, as mobile devices, have limited memory (256MB in the current incarnations) and no hard drive. No hard drive means no swap file." He loses me here. My iPhone has a 32GB SSD hard drive. Sounds like a perfect medium for swap space to me...

Obviously you've never used an Amiga. No swap file + no virtual memory + lots of stuff pre-cached onto RAM disk = snappiest user experience ever.

It scares me to think that I now days open, without blinking, some JPG that would eat up all the memory available in that poor Amiga.

But, ah...

  lea bbye,a0
  move.l (a0),$80
  trap #0
  rts
(to take it back on-topic)

Re: Why the iPad and the iPhone don't support multitasking

#38
post #30

Earlier quoted context omitted.

Sign in with the connection currently using WiFi instead of GPRS/3G, and it will keep the WiFi hardware on, which is what kills it. There is no way for a normal user to know that they need to open new, persistent connections over a connection type that uses the cellular modem instead of the WiFi. And Android defaults to using WiFi for new connections if the WiFi hardware is powered on and connected to a network. The…

I was signed in using WiFi, and I normally have WiFi enabled all the time and get over 24 hours of battery life. Maybe some wireless chipsets suck too much power, but it doesn't appear to be a problem on the N1.

Maybe we're doing something different, but I cannot get my Nexus One to stay alive for longer than 5 hours with an active net connection. It if it's a low-traffic connection (calm IRC channels, occasional email polling) it will last a day (same with my G1) but streaming radio, etc will leave it dead in a long afternoon.

Re: Why the iPad and the iPhone don't support multitasking

#40
post #21
post #5

Earlier quoted context omitted.

Swapping has been demonstrated to be seriously detrimental to the life expectancy of solid state drives.

Has it? Everything I've read that is not just speculation has concluded that you'd have to constantly write a great deal of data to wear out an SSD, even with a swap partition (or file). http://serverfault.com/questions/23720/should-you-disable-pa...

SSD drives have substantially longer life than embedded flash drives since they are SLC, meaning each bit is represented by one cell. Embedded flash devices are MLC, meaning each cell represents multiple bits. Your drive's life expectancy goes down dramatically with each bit you try stuff into a single cell.
Post reply on HN