The Reason Android is Laggy
chartier:
Andrew Munn, an engineering intern at Google, responding to this post by Dianne Hackborn, an Android Framework Engineer:
It’s not GC pauses. It’s not because Android runs bytecode and iOS runs native code. It’s because on iOS all UI rendering occurs in a dedicated UI thread with real-time priority. On the other hand, Android follows the traditional PC model of rendering occurring on the main thread with normal priority.
This is a not an abstract or academic difference. You can see it for yourself. Grab your closest iPad or iPhone and open Safari. Start loading a complex web page like Facebook. Half way through loading, put your finger on the screen and move it around. All rendering instantly stops. The website will literally never load until you remove your finger. This is because the UI thread is intercepting all events and rendering the UI at real-time priority.
Munn goes on to list four other related reasons that help explain the lag that persists throughout Android. Some of the technical discussion in these two posts gets a little beyond my capacity, but they’re great reads if you want some insight into the issue from people who just might actually know what they’re talking about.
via Gina Trapani
(Source: chartier)