Thanks for the reply.

Think I have a solution ... I store a copy of each new ServerThread pointer in a STL vector then loop through the vector array setting each thread's boolean control variable to "stopped=true" at shutdown. Seems to work.