我目前正在尝试更多地利用 kotlin 协程。但我面临一个问题:在这些协程中使用 moshi 或 okhttp 时,我收到警告:
“不适当的阻塞方法调用”
解决这些问题的最佳方法是什么?我真的不想不合适;-)
最佳答案
警告是关于阻塞当前线程和协程的方法无法正确挂起。这样,您将失去协程的所有好处并再次降级为每个线程一个作业。
每种情况都应以不同的方式处理。对于可暂停的 http 调用,您可以使用 ktor http client .但有时没有适合您的库,因此您可以编写自己的解决方案或忽略此警告。
编辑:withContext(Dispatchers.IO)
或者可以使用一些自定义调度程序来解决该问题。感谢您的评论。
关于kotlin - 如何使 "inappropriate blocking method call"合适?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58680028/