[ 
https://issues.apache.org/jira/browse/HTTPCLIENT-942?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12878361#action_12878361
 ] 

Oleg Kalnichevski commented on HTTPCLIENT-942:
----------------------------------------------

> httpclient-3 allowed standard simple try { ... } finally { release something 
> } pattern. 

How is this less standard or more complex?

HttpEntity entity = response.getEntity();
if (entity != null) {
  InputStream instream = entity.getContent();
  try {
  } finally {
     instream.close();
  }
}

> Do I really have to call httpget.abort() in case of unknown RuntimeException?

No, you do not.

> And why Error (like OutOfMemoryError) is not caught then? 

One should never try to mess with Errors. They represent fatal, non-recoverable 
conditions. The best thing is to let the application terminate.

Oleg

> ClientConnectionRelease example is incorrect
> --------------------------------------------
>
>                 Key: HTTPCLIENT-942
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-942
>             Project: HttpComponents HttpClient
>          Issue Type: Bug
>          Components: Examples
>            Reporter: Stepan Koltsov
>            Priority: Minor
>             Fix For: 4.1 Alpha3
>
>
> http://svn.apache.org/repos/asf/httpcomponents/httpclient/tags/4.0.1/httpclient/src/examples/org/apache/http/examples/client/ClientConnectionRelease.java
> is incorrect: 
> 1. if error happens in BufferedReader constructor (OutOfMemoryError, 
> StackOverflowError), reader.close() is not called and connection is not 
> released
> 2. if error happens in reader.readLine(), reader.close() is called, but 
> httpget.abort() is not.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to