Skip to main content

Difference between Service, Async Task & Thread?



What is the difference between Service, Async Task & Thread. If i am not wrong all of them are used to do some stuff in background. So, how to decide which to use and when?




Comments

  1. Probably you already read the documentation description about them, I won't repeat them, instead I will try to give answer with my own words, hope they will help you.


    Service is like an Activity but has no interface. Probably if you want to fetch the weather for example you won't create a blank activity for it, for this you will use a Service.
    A Thread is a Thread, probably you already know it from other part. You need to know that you cannot update UI from a Thread. You need to use a Handler for this, but read further.
    An AsyncTask is an intelligent Thread that is advised to be used. Intelligent as it can help with it's methods, and there are two methods that run on UI thread, which is good to update UI components.


    I am using Services, AsyncTasks frequently. Thread less, or not at all, as I can do almost everything with AsyncTask.

    ReplyDelete
  2. Here is a post comparing various task execution mechanisms in Android.

    ReplyDelete

Post a Comment

Popular posts from this blog

Wildcards in a hosts file

I want to setup my local development machine so that any requests for *.local are redirected to localhost . The idea is that as I develop multiple sites, I can just add vhosts to Apache called site1.local , site2.local etc, and have them all resolve to localhost , while Apache serves a different site accordingly.