[infinispan-dev] findbugs found issue
Mircea Markus
mircea.markus at jboss.com
Thu Sep 3 04:55:37 EDT 2009
Hi,
findbugs detects a problem in the following code:
public void clear() {
// This is expensive...
// lock all segments
for (Segment s : segments) s.lock();
try {
for (Segment s : segments) s.locklessClear();
initLinks();
} finally {
for (Segment s : segments) s.unlock();
}
}
the general description of the issue is:
Method does not release lock on all paths
This method acquires a JSR-166 (java.util.concurrent) lock, but does
not release it on all paths out of the method. In general, the correct
idiom for using a JSR-166 lock is:
Lock l = ...;
l.lock();
try {
// do something
} finally {
l.unlock();
}
In my eyes the code is okay, am I missing something?
Cheers,
Mircea
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/infinispan-dev/attachments/20090903/3ac772cd/attachment-0002.html
More information about the infinispan-dev
mailing list