mirror of
https://github.com/TomHarte/CLK.git
synced 2025-04-21 02:37:44 +00:00
Makes more failing attempts at a clean shutdown.
This commit is contained in:
parent
ac732e2e7b
commit
902b33d25d
@ -25,8 +25,9 @@ class FunctionThread: public QThread {
|
||||
}
|
||||
|
||||
void stop() {
|
||||
QMetaObject::invokeMethod(this, "quit", Qt::QueuedConnection);
|
||||
while(isRunning());
|
||||
// QMetaObject::invokeMethod(this, "quit", Qt::QueuedConnection);
|
||||
quit();
|
||||
wait();
|
||||
}
|
||||
|
||||
private:
|
||||
|
@ -65,7 +65,7 @@ void MainWindow::open() {
|
||||
MainWindow::~MainWindow() {
|
||||
// Stop the audio output, and its thread.
|
||||
if(audioOutput) {
|
||||
audioOutput->stop();
|
||||
// QMetaObject::invokeMethod(audioOutput.get(), "stop", Qt::BlockingQueuedConnection);
|
||||
audioThread.stop();
|
||||
}
|
||||
|
||||
|
@ -13,7 +13,7 @@ Timer::Timer(QObject *parent) : QObject(parent) {
|
||||
timer = std::make_unique<QTimer>();
|
||||
timer->setInterval(1);
|
||||
|
||||
connect(timer.get(), SIGNAL(timeout()), this, SLOT(tick()), Qt::DirectConnection);
|
||||
connect(timer.get(), &QTimer::timeout, this, &Timer::tick, Qt::DirectConnection);
|
||||
timer->start();
|
||||
});
|
||||
}
|
||||
@ -35,6 +35,6 @@ void Timer::tick() {
|
||||
}
|
||||
|
||||
Timer::~Timer() {
|
||||
QMetaObject::invokeMethod(timer.get(), "stop", Qt::QueuedConnection);
|
||||
QMetaObject::invokeMethod(timer.get(), "stop", Qt::BlockingQueuedConnection);
|
||||
thread.stop();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user