Hi, In cornerstone/blocks/scheduler/DefaultTimeScheduler class the addTrigger() & rescheduleEntry() methods notify the waiting thread only if the first entry in the priorityqueue matches the current entry. if( entry == m_priorityQueue.peek() ) { notifyAll(); } As a result of this, the waiting thread (the run() method) synchronized( this ) { wait( duration ); } does not get notified & does not get a chance to remove invalid entries from the queue (old entries invalidated by rescheduleEntry() method) & the queue keeps growing until the wait times out, the timeout value depending on the value specified to the trigger.
My question here is why don't these methods send a notify after it finds any entry in the queue, so that the waiting thread gets a chance to clean up all invalid entries? Or is there some other thread notifying this thread? Shilpa Dalmia PostX Corporation -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>