Originally posted by Passso
View Post
Android makes it practically *IMPOSSIBLE* to write single-threaded software. Virtually all Android software IS multi-threaded. Any that isn't, whoever wrote it went to great lengths to avoid it. As far as complexity goes, quite the opposite. From a software complexity point of view, using multiple threads adds a little bit to the complexity, but removes a LOT of complexity, especially when you're dealing with anything timer based. Overall, it is a LOT easier to write multi-threaded software.
Why? Well you need something to keep a database in sync with a server? You write a thread that does that and set it running.
You need to make changes to the display, you add it to the display thread (this is a thread that Android FORCES down your throat).
The user presses a button and you need to do something without interrupting the pretty pictures on the display, you do it in a new thread. If you try to do it on the UI thread, it will complain very loudly, and will even tell the END USER that you did it wrong. That will make YOU look very foolish (and not to mention, your UI will be stopping).
I hear the multi-processor power myth since 20 years and excepted for dedicated servers with specific softwares multi_procing improves really poorly speed and usage.
How many people buy 8 cores i7 to play games and get the same results than a i3 with 2 cores ? A lot.
How many people buy 48 cores servers while their memory or hard drives are huge bottlenecks ? A lot.
How many people buy 8 cores i7 to play games and get the same results than a i3 with 2 cores ? A lot.
How many people buy 48 cores servers while their memory or hard drives are huge bottlenecks ? A lot.
I agree that 8 cores are a big step and could make miracles with a lot of work, but considering the costs and the short development time nowadays I bet you would not see the difference between 8 cores and 2 cores for a mobile or tablet usage with actual apps.
Comment