[英]Okhttp3 block program
我正在開發一個庫,它是一個獲得一些高階函數的文件
我的文件是這樣的:
import okhttp3.*
private val client by lazy { OkHttpClient() }
fun fn() {
client.newCall(request(url)).enqueue(callback)
do stuff ...
}
...
當我調用一些fn()
時,它會繼續在后台運行,阻止程序退出,即使沒有更多指令可以執行。 我懷疑這是因為.enqueue(callback)
是異步的。
如果您升級到最新的 OkHttp 4.7.2,那么它不會阻塞您的程序,因為線程現在是守護線程。
干凈關閉記錄在 OkHttpClient 的 API 文檔中。
https://square.github.io/okhttp/4.x/okhttp/okhttp3/-ok-http-client/
client.dispatcher().executorService().shutdown();
client.connectionPool().evictAll();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.