У меня проблема.Если я вызову Abort (), функция run вернется без экземпляра complexMath, у которого будет достаточно времени для очистки.
Что я хочу, так это то, что после вызова Abort () у экземпляра complexMath достаточно времени, чтобы отключиться, очистить весь ожидающий сигнал и слот (внутри complexMath, он также имеет свой собственный сигнал и слоты), прежде чем вернуться.1003 *
void MyThread::Go(){
start();
}
void MyThread::Abort(){
emit stopNow();
quit();
}
void MyThread::run(){
ComplexMath * complexMath = new ComplexMath();
connect( complexMath, SIGNAL(OnCalculation(qint)), this, SLOTS(PartialOutput(qint)) );
connect( this, SIGNAL(stopNow()), complexMath, SLOTS(deleteLater());
exec();
}
void MyThread::PartialOutput(qint data){
qDebug() << data;
}
Спасибо!