Coroutines is our recommended solution for asynchronous programming on Android . Noteworthy features include the following: Lightweight: You can run many coroutines on a single thread due to support for suspension, which doesn’t block the thread where the coroutine is running.