Android: When should I use a Handler() and when should I use a Thread?
When I need something to run asynchronously , such as a long running task or a logic that uses the network, or for whatever reason, Starting a new Thread and running it works fine. Creating a Handler and running it works as well. What's the difference? When should I use each one? What are the advantages / reasons to use a Handler and not a Thread ? PS. - For this question's sake, let's ignore AsyncTask . - Handler().postDelayed use case is clear to me, for this question's sake let's assume I need the task to start immediately. FoamyGuy If whatever you are doing is "heavy" you should be doing