Пример обработчика:

я есть цикл по куче URL-адресов, для каждого из которых я делаю следующее:

private String doQuery(String url) {

  HttpGet httpGet = new HttpGet(url);
  setDefaultHeaders(httpGet); // static method
  HttpResponse response = httpClient.execute(httpGet);   // httpClient instantiated in constructor

  int rc = response.getStatusLine().getStatusCode();

  if (rc != 200) {
    // some stuff...
    return;
  }

  HttpEntity entity = response.getEntity();

  if (entity == null) {
    // some stuff...
    return;
  }

  // process the entity, get input stream etc

}

Первый запрос в порядке, второй выдает это исключение:

Исключение в потоке "main" java.lang.IllegalStateException: недопустимое использование SingleClientConnManager: соединение все еще выделено. Обязательно освободите соединение, прежде чем выделять другое. в org.apache.http.impl.conn.SingleClientConnManager.getConnection (SingleClientConnManager.java:199) в org.apache.http.impl.conn.SingleClientConnManager $ 1.getConnection (SingleClientConnManager.java::

Это просто однопоточное приложение. Как я могу освободить это соединение?

Ответы на вопрос(12)

Ваш ответ на вопрос