понедельник, 08 октября 2012

Проконтролировать факт запуска потока в Qt можно с использованием семафора. Делается это следующим образом.
//------------------------------------------------------------
QSemaphore sem(1);
class Thread: public QThread { public: protected: void run() { msleep(5000); // заставляем главный поток подождать 5 секунд sem.release(); // сигнализируем об окончании ожидания } };
int main(int argc, char *argv[]) { QCoreApplication a(argc, argv);
sem.acquire();
Thread t; t.start();
sem.acquire(); // на этой строке будет ожидание вызова sem.release() внутри Thread::run() sem.release();
t.wait();
return 0; } //------------------------------------------------------------
|