#include #include #include using namespace std; class Thread; Thread *threads[10]; class Thread { public: static int numThreads; int myNum; Thread * pickRandThread() { int x; do x = rand() % numThreads; while(myNum == x); return getThread(x); } void receiveToken(); bool gotTokens(); Thread * getThread(int i); }; int main() { int flag = 0; srand((unsigned)time(0)); Thread::numThreads = 10; for (int i = 0; i < 10; i++) threads[i] = new Thread(i); return 0; }