I think we're talking about different things here.  I admit that I have been following 
these TPCThreadManager discussions sparingly; my focus has really been on the 
CommandManager interface and allowing my system to track Commands being executed by a 
ThreadPool, not the individual threads themselves.  

I think I'm confusing the "runtime exceptions in PipelineRunner" issue with the "Could 
not create enough Components to service your request in TPCThreadManager" issue.

Are these different?  And is the "Could not create enough Components" issue solved in 
the latest CVS?

James

-----Original Message-----
From: Gregory Steuck [mailto:[EMAIL PROTECTED]]
Sent: Thursday, May 30, 2002 12:36 PM
To: Avalon Developers List
Subject: RE: TPCThreadManager exceptions


>>>>> "James" == James Clover <Clover> writes:

    James> The problem here is how to report back to the caller that
    James> an error has occured, right? 

If I am not mistaken you are talking about passing the return status
from an executed Runnable back to the scheduling thread, right? Ala
unix wait(2)? In such a case the mechanism is already in place.

    James> 1. First, and most importantly, no Throwable should ever
    James> kill a thread pool.  It may kill the Command that is
    James> running, but not the pool.  If the pool gets some
    James> exception, it should simply log it.

Again, if I get what you meant, Throwable resulting from execution of
an Executable can't possibly kill the thread pool: Executable is
executed in a separate thread - WorkerThread class. And WorkerThread
takes great precautions to stay alive no matter what Executable does.

    James> 2. In order to communicate between Command and calling process, I'm
    James> proposing new Task, TaskStatus, and TaskManager sets of
    James> code.

ThreadControl substitutes for Task + TaskStatus, TaskManager is the
ThreadPool itself.

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to