void* mainThreadFunction(void* threadArg) { PetriNet* petriNet = (PetriNet*) threadArg; petriNet->m_startPlace->produceTokens(1); petriNet->m_endPlace->consumeTokens(petriNet->m_endPlace->nbOfTokens()); petriNet->addTime(petriNet->getTimeOffset() * 1000); //petriNet->makeOneStep(); while (petriNet->m_endPlace->nbOfTokens() == 0 && !petriNet->m_mustStop) { petriNet->update(); } petriNet->m_isRunning = false; return NULL; }