cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bruno Dumon <br...@outerthought.org>
Subject Re: CommandManager issues [was Re: Releasing 2.1.1?]
Date Sun, 31 Aug 2003 09:36:29 GMT
On Sat, 2003-08-30 at 15:20, Giacomo Pati wrote:
> Is someone on the Doug Lea list (if there is any) to report this?

I got an answer from him, he provided me with a slightly edited change:

  protected synchronized void workerDone(Worker w) {
    threads_.remove(w);
    if (--poolSize_ == 0 && shutdown_) { 
      maximumPoolSize_ = minimumPoolSize_ = 0; // disable new threads
      notifyAll(); // notify awaitTerminationAfterShutdown
    }

    if (!shutdown_) { // create a replacement now if needed
      if (poolSize_ < minimumPoolSize_) {
        try {
           Runnable r = (Runnable)(handOff_.poll(0));
           if (r != null)
             addThread(r);
        } catch(InterruptedException ie) {
          return;
        }
      }
    }
  }

I've patched the concurrent 1.3.2 package with this change and put it in
CVS. This change will be part of the next maintenance release of
concurrent (he had this problem fixed already in the JSR-166 version of
that class).

-- 
Bruno Dumon                             http://outerthought.org/
Outerthought - Open Source, Java & XML Competence Support Center
bruno@outerthought.org                          bruno@apache.org


Mime
View raw message