void clthreadzip::run(){ ............. while (intCount < 1000) { ................ } // и тут мне надо отослать сигнал, что обработка данных окончена // и для этого я вызываю функцию terminate (), которая должна завершить поток и соответственно отсылать сигнал finished () // но этого не происходит. Более того она по моему вообще зависает terminate ();}
clthreadzip ZFileRead;void MainWindow::init(){ QObject::connect(&ZFileRead, SIGNAL(finished()), this, SLOT(FinishThread()));}void MainWindow::FinishThread(){ ui->pgBar->setValue(ui->pgBar->maximum()); ui->statusBar->showMessage(trUtf8("Обработка данных завершена")); qDebug() << trUtf8("Thread Finished!");}
C++ (Qt)void clthreadzip::run(){ ............. while (intCount < 1000 && !isTerminated ) { ................ }}
C++ (Qt) class MyThread : public QThread { public: void run(); }; void MyThread::run() { QTcpSocket socket; // connect QTcpSocket's signals somewhere meaningful ... socket.connectToHost(hostName, portNumber); exec(); }