None of them are the same, although they will all have the same network effect.
The difference between the first and second is that if you execute the main thread of the application while executing the code, the first ( runOnUiThread()) will immediately execute Runnable. The second ( post()) always puts Runnableat the end of the event queue, even if you are already in the main thread of the application.
, , BackgroundTask, , no-op doInBackground(), , , post(). , , . AsyncTask, , onPostExecute().