I did a draft of a TThreadPool class. Most of it works (creating assigning and re-assigning tasks works, stopping the thing still produces an exception). If anybody wants to test it I can post the project. -Michael