> -----Original Message----- > From: Russell Brown [mailto:[email protected]] > Sent: Thursday, August 04, 2011 12:04 AM > To: HttpClient User Discussion > Subject: Re: Using ThreadSafeClientConnManager > > On 4 Aug 2011, at 01:18, Mohit Anchlia wrote: > > > I am trying to understand these 2: > > > > ClientConnectionManager cm = new ThreadSafeClientConnManager(); > > cm.setMaxTotal(100); > > HttpClient httpClient = new DefaultHttpClient(cm); > > > > Have couple of questions: > > > > 1) Can one httpClient object be shared accross multiple threads doing > > post/get/delete/put requests? > > Yes. > > > 2) What happens in above case if there are more concurrent threads > say > > 200 than actual no. of connections? So what happens if 200 threads > > trying to use httpClient object (shared). But we created only 100 > > connections. Does it wait on .execute if all connections are busy? > > The thread attempting to acquire a connection blocks. If you have set a > timeout then it blocks until the timeout is reached and an exception is > thrown. > > Worth noting, in your above snippet the max connections per route will > only be *2*.
Sorry to the OP to hijack this question, but I'd like to understand a little more about this. Is a "route" defined as the path to a particular host? If all of my connections go to the same host, and I'll have numerous threads trying to make that connection, do I need to change some default to allow more than 2 connections per "route"? > > Can somone please help me understand? > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [email protected] > > For additional commands, e-mail: [email protected] > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
