View Single Post
Posts: 1,548 | Thanked: 7,510 times | Joined on Apr 2010 @ Czech Republic
#2
Yep, it's the same thing as on Android (wakelocks) - when the screen of the device is turned off, the device will basically do a suspend to RAM (you can check fro that in the journal), freezing all running applications. This is a slight simplification - it looks like apps with an active network socket (jabber/IRC) might continue running or might be woken up on network traffic - anyone more knowledgeable is welcome to fill in the blanks!

Note that this only depends on screen being off - as long as the screen is on, all native apps (including the one in foreground) run at the same time (eq. apps are not suspended when in background).

This power management behavior has obvious downsides, but also makes sure it much less likely a badly written app getting stuck in an infinite cycle (or even just needless frequent polling) will drain your battery in a couple hours without you noticing, meaning the device is dead the next time you need it.

As for normal distros not needing this - well, they (quite unfortunately) don't run on any daily-useable smartphones, so they don't really have to care.

Also, there are mechanisms you can use to prevent your application from being frozen when the screen is turned off:
  • there is an API to prevent suspend overall (modRana uses this when recording a tracklog)
  • there is an API to schedule application wakeup at a later time (don't know the specifics, haven't used it myself)
  • IIRC, there is a way to turn the suspend off, with correspondingly worse power usage

So all in all, especially as there is an API to handle these power management limitations when needed, I see this change from how N900 handled power management as rather a positive one.
__________________
modRana: a flexible GPS navigation system
Mieru: a flexible manga and comic book reader
Universal Components - a solution for native looking yet component set independent QML appliactions (QtQuick Controls 2 & Silica supported as backends)

Last edited by MartinK; 2018-01-11 at 12:01.
 

The Following 11 Users Say Thank You to MartinK For This Useful Post: