我正在开发一个库,它是一个获得一些高阶函数的文件
我的文件是这样的:
import okhttp3.*
private val client by lazy { OkHttpClient() }
fun fn() {
client.newCall(request(url)).enqueue(callback)
do stuff ...
}
...当我调用一些fn()时,它继续在后台运行,阻止程序退出,即使没有更多的指令可供执行。我怀疑这是因为.enqueue(callback)是异步的。
发布于 2020-06-12 14:49:36
如果您升级到最新的OkHttp 4.7.2,那么它不会阻塞您的程序,因为线程现在是守护进程线程。
干净关机在OkHttpClient接口文档中有说明。
https://square.github.io/okhttp/4.x/okhttp/okhttp3/-ok-http-client/
client.dispatcher().executorService().shutdown();
client.connectionPool().evictAll();https://stackoverflow.com/questions/62316177
复制相似问题