Domanda di colloquio di Veea

What is the difference between AsyncTask and RxJava (or Kotlin Coroutines) for handling asynchronous tasks in Android? When would you choose one over the other?