首页 > 解决方案 > 单独的 Dispatchers.IO 块中的不适当的阻塞方法调用警告

问题描述

为什么第一个代码段会产生Inappropriate blocking method call警告,而第二个则不会?

private fun prepareList() = launch {
    withContext(Dispatchers.IO) {
        requireContext().openFileOutput(listFileName, Application.MODE_PRIVATE).use { out ->
            requireContext().assets.open(listFileName).use {
                it.copyTo(out)
            }
        }
    }
}

private fun prepareList() = launch(Dispatchers.IO) {
    requireContext().openFileOutput(listFileName, Application.MODE_PRIVATE).use { out ->
        requireContext().assets.open(listFileName).use {
            it.copyTo(out)
        }
    }
}

标签: kotlinkotlin-coroutines

解决方案


推荐阅读