У меня есть две функции, которые должны быть выполнены после указанного c интервала времени. Поэтому я создаю два потока, и каждая функция выполняется в отдельных потоках. Одна из функций " checkForEvent () " имеет событие, ожидающее события.
Когда функция " checkForEvent () " ожидает события, другая функция " checkServer () " не выполняется, даже если она выполняется в отдельный поток.
dongleThread = new QThread(this);
checkDongle = new QTimer();
checkDongle->setInterval(DONGLE_CHECK_TIMER);
checkDongle->moveToThread(dongleThread);
connect(checkDongle, SIGNAL(timeout()), this, SLOT(checkForEvent()));
connect(dongleThread, SIGNAL(started()), checkDongle, SLOT(start()));
dongleThread->start();
serverThread = new QThread(this);
checkServer = new QTimer();
checkServer->setInterval(SERVER_CHECK_TIMER);
checkServer->moveToThread(serverThread);
connect(checkServer, SIGNAL(timeout()), this, SLOT(checkServer()));
connect(serverThread, SIGNAL(started()), checkServer, SLOT(start()));
serverThread->start();
checkForEvent() //This function is waiting for an Event
checkServer()
Как выполнить обе функции в отдельных потоках? Спасибо !!