79 void init(
int numThreads,
bool useInteractive,
bool useSeed,
unsigned int seed);
91 void startThread(
int id,
string property);
111 void invokeScheduler(
int location = -1);
121 void markWaitingOnLock(
int id,
string name);
131 void markWaitingOnSem(
int id,
string name);
146 int wakeupThread(deque<int> &waiting);
155 void updateSection(
string section);
162 int getCurrThreadId()
const;
169 string getThreadProperty(
int id)
const;
176 string getThreadTable()
const;
201 vector<Thread> threadArray;
203 bool allThreadsAdded;
204 pthread_mutex_t initLock;
205 int numThreadsCompleted;
206 bool interactiveMode;
212 void pauseThread(
int id);
220 int selectThread(deque<int> &queue,
string message);
223 string getThreadState(ThreadState state)
const;