Use of "Double-Checked Locking" in ThreadPoolFilter
---------------------------------------------------
Key: DIRMINA-183
URL: http://issues.apache.org/jira/browse/DIRMINA-183
Project: Directory MINA
Type: Bug
Reporter: peter royal
In ThreadPoolFilter, the Double-Checked Locking pattern is used:
SessionBuffer buf = ( SessionBuffer ) buffers.get( session );
if( buf == null )
{
synchronized( buffers )
{
buf = ( SessionBuffer ) buffers.get( session );
if( buf == null )
{
buf = new SessionBuffer( session );
buffers.put( session, buf );
}
}
}
.. this could lead to problems on multi-CPU systems
(http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira