Я занимаюсь разработкой веб-сканера, но часто после непродолжительного выполнения (минут) некоторые потоки перестают выполнять свою работу. Запустив отладчик, я обнаружил, что он останавливается в SocketRead0.
Это происходит, когда поток загружает содержимое страницы с HttpURLConnection.getInputStream()
.
Я не знаю, что вызывает это, но я думаю, что это связано с многопоточностью.
Кто-то знает, как решить или избежать этого?
Я не использую пул HttpURLConnection, но я не знаю, как это сделать.
conn = (HttpURLConnection) new URL(url).openConnection();
conn.setInstanceFollowRedirects(true);
conn.connect();
CountingInputStream content;
try {
content = new CountingInputStream(conn.getInputStream());
//processing of content
content.close();
return true;
} catch (Exception e) {
return false;
}