[ https://issues.apache.org/jira/browse/POOL-93?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12490928 ]
Marcos Sanz commented on POOL-93: --------------------------------- I have included a simmilar patch to Holger's, this time for the GenericObjectPool. I have refrained from introducing volatile variables.I have also refrained from synchronizing the access to _testOnReturn, which is really not worth bothering. The performance improvement in borrow/return time after applying the patch reaches in some cases one order of magnitude. All unit tests passed. I think further improvement in the liveness of this class can be done, mainly by alleviating synchronization in the borrowObject() method. > Reduce contention by making borrow & return more independent from each other > ---------------------------------------------------------------------------- > > Key: POOL-93 > URL: https://issues.apache.org/jira/browse/POOL-93 > Project: Commons Pool > Issue Type: Improvement > Affects Versions: Nightly Builds > Reporter: Holger Hoffstätte > Attachments: GenericObjectPool.patch, GKOP-relaxedSyncOnReturn.patch, > perf-patch-GenericPool.txt, relaxedReturnObjectBenchmark.txt > > > Currently borrow & return are completely blocked from each other, while at > least the factory-based validation & destruction can be handled > independently. A few simple changes narrow the synchronization blocks yet > retain overall correctness. -- 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]