Hi. This is a question for HTTPClient 3.1. I am writing an app that needs to enforce a maximum overall time in which a http GET method can be opened, read and released. Even if a server is sending me data and the timeout is hit, I want to abort the transfer.
I am using the MultiThreadedHttpConnectionManager. After executing, I check the status code. If it's not 200 the effect is that I call releaseConnection() immediately. However, I have noticed that calling releaseConnection() blocks until the server has finished sending data. For instance, it may respond with a 400 and then slowly stream back a response body. Thus, my 'maximum overall timeout' may be compromised. I had wondered whether an alternative may be to schedule a Runnable in the future for the timeout which, when run, calls abort() on the Method. Two concerns: 1) Would this forcibly terminate the transfer? 2) What would be the effect on MultiThreadedHttpConnectionManager? Many thanks for any guidance you can give me. Dan --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
