I was trying to update the recycler view content from a background thread in Kotlin. I am not using AsyncTask.
Here is my code, i want to know if there is any better way than this:
In my MainActivity, i have progressThread as a member variable.
var progressThread = Thread() Then in my method where i want to run the thread first i am defining it...like
progressThread = Thread ( Runnable { kotlin.run { try { while (i <= 100 && !progressThread.isInterrupted) { Thread.sleep(200) //Some Logic runOnUiThread { //this runs in ui thread } i++ } }catch (e:InterruptedException){ progressThread.interrupt() } } }) after that i am starting it in the same method as
progressThread.start() and for stopping it, i have a listener to cancel the progress and in the callback of that listener, i have written:
progressThread.interrupt()