[ https://issues.apache.org/jira/browse/JCS-171?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15806379#comment-15806379 ]
Wiktor N commented on JCS-171: ------------------------------ Using only second change I can see that CacheEventQueue.QProcessor threads die after sometime instead live forever. Please find patch attached. > Multiple CacheEventQueue.QProcessor spawned for the same cache region > --------------------------------------------------------------------- > > Key: JCS-171 > URL: https://issues.apache.org/jira/browse/JCS-171 > Project: Commons JCS > Issue Type: Bug > Components: Composite Cache > Affects Versions: jcs-2.0 > Reporter: Wiktor N > > I noticed that running on new version of JCS I get multiple > CacheEventQueue.QProcessor thread. They spawn from time to time. > I've checked recent changes and changes few things in r1774925 look > suspicious: > 1. In previous code we spawned a new thread in synchronized section. This got > us a guarantee, that there will be no two threads trying to spawn a new > thread in the same time. Maybe some locking is needed around thread creation? > 2. QProcessor uses isAlive() method. But this is defined by Thread.isAlive() > while it should probably check for CacheEventQueue.this.isAlive() -- This message was sent by Atlassian JIRA (v6.3.4#6332)