Я использую OkHttp 3, и у меня все время возникают утечки предупреждений о подключении:
WARNING: A connection to https://help.helpling.com/ was leaked. Did you forget to close a response body?
Jul 14, 2016 6:57:09 PM okhttp3.ConnectionPool pruneAndGetAllocationCount
Каждый раз, когда я получаю ResponseBody
, я либо вызываю .string()
, который якобы закрывает поток для меня, либо я явно закрываю его в блоке finally
следующим образом:
ResponseBody responseBody = response.body();
try (Reader responseReader = responseBody.charStream()) {
...
}
finally {
responseBody.close();
}
Мое приложение интенсивно использует сеть, и все же это предупреждение появляется часто. Я никогда не наблюдал никаких проблем, вызванных этой предполагаемой утечкой, но я все равно хотел бы понять, если и что я делаю неправильно.
Может ли кто-нибудь пролить свет на это?