mirror of
https://github.com/bitcoin/bitcoin.git
synced 2024-11-20 18:49:30 +01:00
Merge #14250: qt: Remove redundant stopThread() and stopExecutor() signals
24313fbf7e
Remove redundant stopExecutor() signal (Hennadii Stepanov)1c0e0a5e38
Remove redundant stopThread() signal (Hennadii Stepanov) Pull request description: The `QThread::finished` signal do this work. Tree-SHA512: 1afce23d30232276d50c3af5af79d83b88e390a2b71f7df585cc1079585d330447d179bbc34c0a89599beb2da035dfd5b9ce23238171490825cabc3a19ae6e67
This commit is contained in:
commit
7ee604487f
@ -212,7 +212,7 @@ BitcoinApplication::~BitcoinApplication()
|
||||
if(coreThread)
|
||||
{
|
||||
qDebug() << __func__ << ": Stopping thread";
|
||||
Q_EMIT stopThread();
|
||||
coreThread->quit();
|
||||
coreThread->wait();
|
||||
qDebug() << __func__ << ": Stopped thread";
|
||||
}
|
||||
@ -279,8 +279,7 @@ void BitcoinApplication::startThread()
|
||||
connect(this, &BitcoinApplication::requestedInitialize, executor, &BitcoinCore::initialize);
|
||||
connect(this, &BitcoinApplication::requestedShutdown, executor, &BitcoinCore::shutdown);
|
||||
/* make sure executor object is deleted in its own thread */
|
||||
connect(this, &BitcoinApplication::stopThread, executor, &QObject::deleteLater);
|
||||
connect(this, &BitcoinApplication::stopThread, coreThread, &QThread::quit);
|
||||
connect(coreThread, &QThread::finished, executor, &QObject::deleteLater);
|
||||
|
||||
coreThread->start();
|
||||
}
|
||||
|
@ -99,7 +99,6 @@ public Q_SLOTS:
|
||||
Q_SIGNALS:
|
||||
void requestedInitialize();
|
||||
void requestedShutdown();
|
||||
void stopThread();
|
||||
void splashFinished();
|
||||
void windowShown(BitcoinGUI* window);
|
||||
|
||||
|
@ -156,7 +156,7 @@ Intro::~Intro()
|
||||
{
|
||||
delete ui;
|
||||
/* Ensure thread is finished before it is deleted */
|
||||
Q_EMIT stopThread();
|
||||
thread->quit();
|
||||
thread->wait();
|
||||
}
|
||||
|
||||
@ -311,8 +311,7 @@ void Intro::startThread()
|
||||
connect(executor, &FreespaceChecker::reply, this, &Intro::setStatus);
|
||||
connect(this, &Intro::requestCheck, executor, &FreespaceChecker::check);
|
||||
/* make sure executor object is deleted in its own thread */
|
||||
connect(this, &Intro::stopThread, executor, &QObject::deleteLater);
|
||||
connect(this, &Intro::stopThread, thread, &QThread::quit);
|
||||
connect(thread, &QThread::finished, executor, &QObject::deleteLater);
|
||||
|
||||
thread->start();
|
||||
}
|
||||
|
@ -55,7 +55,6 @@ public:
|
||||
|
||||
Q_SIGNALS:
|
||||
void requestCheck();
|
||||
void stopThread();
|
||||
|
||||
public Q_SLOTS:
|
||||
void setStatus(int status, const QString &message, quint64 bytesAvailable);
|
||||
|
@ -688,8 +688,7 @@ void RPCConsole::setClientModel(ClientModel *model)
|
||||
}
|
||||
if (!model) {
|
||||
// Client model is being set to 0, this means shutdown() is about to be called.
|
||||
// Make sure we clean up the executor thread
|
||||
Q_EMIT stopExecutor();
|
||||
thread.quit();
|
||||
thread.wait();
|
||||
}
|
||||
}
|
||||
@ -975,11 +974,8 @@ void RPCConsole::startExecutor()
|
||||
// Requests from this object must go to executor
|
||||
connect(this, &RPCConsole::cmdRequest, executor, &RPCExecutor::request);
|
||||
|
||||
// On stopExecutor signal
|
||||
// - quit the Qt event loop in the execution thread
|
||||
connect(this, &RPCConsole::stopExecutor, &thread, &QThread::quit);
|
||||
// - queue executor for deletion (in execution thread)
|
||||
connect(&thread, &QThread::finished, executor, &RPCExecutor::deleteLater, Qt::DirectConnection);
|
||||
// Make sure executor object is deleted in its own thread
|
||||
connect(&thread, &QThread::finished, executor, &RPCExecutor::deleteLater);
|
||||
|
||||
// Default implementation of QThread::run() simply spins up an event loop in the thread,
|
||||
// which is what we want.
|
||||
|
@ -132,7 +132,6 @@ public Q_SLOTS:
|
||||
|
||||
Q_SIGNALS:
|
||||
// For RPC command executor
|
||||
void stopExecutor();
|
||||
void cmdRequest(const QString &command, const WalletModel* wallet_model);
|
||||
|
||||
private:
|
||||
|
Loading…
Reference in New Issue
Block a user