rem: fThreads[threadName] = new BThreadManager<TestClass, ExpectedException>(threadName, fObject, method);
add: fThreads[threadName] = new BThreadManager<TestClass, ExpectedException>(threadName, fObject, method, fThreadSem);
context: BThreadedTestCaller<TestClass, ExpectedException>::addThread(std::string threadName, ThreadMethod method) {	if (fThreads.find(threadName) == fThreads.end()) {		// Unused name, go ahead and add		fThreads[threadName] = new BThreadManager<TestClass, ExpectedException>(threadName, fObject, method);			} else {		// Duplicate name, throw an exception		throw CppUnit::Exception("BThreadedTestCaller::addThread() - Attempt to add thread under duplicated name ('"			+ threadName + "')");	}}