scope.launch {
supervisorScope {
val newsDefered = async { fetchNews() }
val adDefered = async { fetchAd() }
val news = newsDefered.await()
val ads = adDefered.await()
refreshUi(news, ads)
}
}
SupervisorJob,它的特点就是孩子的失败不会影响父亲,也不会影响兄弟。
现在广告和新闻加载互不影响,各自抛异常都不会影响对方。