httpcomponents-client/module-client
Oleg Kalnichevski e2eb355878 HTTPCLIENT-763: AbstractClientConnAdapter#abortConnection() does not release the connection if called from the main execution thread while there is no blocking I/O operation.
AbstractClientConnAdapter#abortConnection() is usually expected to be called from a helper thread in order to unblock the main execution thread blocked in an I/O operation. It may be unsafe to call AbstractClientConnAdapter#releaseConnection() from the helper thread, so we have to rely on an IOException thrown by the closed socket on the main thread to trigger the release of the connection back to the connection manager. However, if this method is called from the main execution thread it should be safe to release the connection immediately. Besides, this also helps ensure the connection gets released back to the manager if AbstractClientConnAdapter#abortConnection() is called from the main execution thread while there is no blocking I/O operation.


git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@650223 13f79535-47bb-0310-9956-ffa450edef68
2008-04-21 19:08:17 +00:00
..
src HTTPCLIENT-763: AbstractClientConnAdapter#abortConnection() does not release the connection if called from the main execution thread while there is no blocking I/O operation. 2008-04-21 19:08:17 +00:00
pom.xml [maven-release-plugin] prepare for next development iteration 2008-02-20 19:42:42 +00:00