mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-26 02:35:38 +08:00
Ref T314 Style.
This commit is contained in:
committed by
Klaus Basan
parent
047aeeff11
commit
c98454ff8a
@@ -86,14 +86,14 @@ namespace BlackMisc
|
|||||||
|
|
||||||
this->setFinished();
|
this->setFinished();
|
||||||
|
|
||||||
QThread *ownThread = this->thread();
|
QThread *workerThread = this->thread();
|
||||||
Q_ASSERT_X(ownThread->thread()->isRunning(), Q_FUNC_INFO, "Owner thread's event loop already ended");
|
Q_ASSERT_X(workerThread->thread()->isRunning(), Q_FUNC_INFO, "Owner thread's event loop already ended");
|
||||||
|
|
||||||
this->moveToThread(ownThread->thread()); // move worker back to the thread which constructed it, so there is no race on deletion
|
this->moveToThread(workerThread->thread()); // move worker back to the thread which constructed it, so there is no race on deletion
|
||||||
Q_ASSERT_X(this->thread() == ownThread->thread(), Q_FUNC_INFO, "moveToThread failed");
|
Q_ASSERT_X(this->thread() == workerThread->thread(), Q_FUNC_INFO, "moveToThread failed");
|
||||||
|
|
||||||
//! \todo KB 2018-97 new syntax not yet supported on Jenkins QMetaObject::invokeMethod(ownThread, &CWorker::deleteLater)
|
//! \todo KB 2018-97 new syntax not yet supported on Jenkins QMetaObject::invokeMethod(workerThread, &CWorker::deleteLater)
|
||||||
QMetaObject::invokeMethod(ownThread, "deleteLater");
|
QMetaObject::invokeMethod(workerThread, "deleteLater");
|
||||||
QMetaObject::invokeMethod(this, "deleteLater");
|
QMetaObject::invokeMethod(this, "deleteLater");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -183,10 +183,10 @@ namespace BlackMisc
|
|||||||
// called by own thread, will deadlock, return
|
// called by own thread, will deadlock, return
|
||||||
if (CThreadUtils::isCurrentThreadObjectThread(this)) { return; }
|
if (CThreadUtils::isCurrentThreadObjectThread(this)) { return; }
|
||||||
|
|
||||||
QThread *ownThread = thread(); // must be before quit()
|
QThread *workerThread = thread(); // must be before quit()
|
||||||
this->quit();
|
this->quit();
|
||||||
|
|
||||||
bool ok = ownThread->wait(30 * 1000); //! \todo KB 2017-10 temp workaround: in T145 this will be fixed, sometimes (very rarely) hanging here during shutdown
|
bool ok = workerThread->wait(30 * 1000); //! \todo KB 2017-10 temp workaround: in T145 this will be fixed, sometimes (very rarely) hanging here during shutdown
|
||||||
Q_ASSERT_X(ok, Q_FUNC_INFO, "Wait timeout"); // MS 2018-09 assert because we want a stack trace of all threads, via breakpad
|
Q_ASSERT_X(ok, Q_FUNC_INFO, "Wait timeout"); // MS 2018-09 assert because we want a stack trace of all threads, via breakpad
|
||||||
Q_UNUSED(ok);
|
Q_UNUSED(ok);
|
||||||
}
|
}
|
||||||
@@ -229,12 +229,12 @@ namespace BlackMisc
|
|||||||
|
|
||||||
Q_ASSERT_X(m_owner->thread()->isRunning(), Q_FUNC_INFO, "Owner thread's event loop already ended");
|
Q_ASSERT_X(m_owner->thread()->isRunning(), Q_FUNC_INFO, "Owner thread's event loop already ended");
|
||||||
|
|
||||||
QThread *ownThread = this->thread();
|
QThread *workerThread = this->thread();
|
||||||
this->moveToThread(m_owner->thread()); // move worker back to the thread which constructed it, so there is no race on deletion
|
this->moveToThread(m_owner->thread()); // move worker back to the thread which constructed it, so there is no race on deletion
|
||||||
Q_ASSERT_X(this->thread() == m_owner->thread(), Q_FUNC_INFO, "moveToThread failed");
|
Q_ASSERT_X(this->thread() == m_owner->thread(), Q_FUNC_INFO, "moveToThread failed");
|
||||||
|
|
||||||
//! \todo new syntax not yet supported on Jenkins QMetaObject::invokeMethod(ownThread, &CWorker::deleteLater)
|
//! \todo new syntax not yet supported on Jenkins QMetaObject::invokeMethod(workerThread, &CWorker::deleteLater)
|
||||||
QMetaObject::invokeMethod(ownThread, "deleteLater");
|
QMetaObject::invokeMethod(workerThread, "deleteLater");
|
||||||
QMetaObject::invokeMethod(this, "deleteLater");
|
QMetaObject::invokeMethod(this, "deleteLater");
|
||||||
}
|
}
|
||||||
} // ns
|
} // ns
|
||||||
|
|||||||
@@ -334,7 +334,7 @@ namespace BlackMisc
|
|||||||
using CWorkerBase::setStarted;
|
using CWorkerBase::setStarted;
|
||||||
using CWorkerBase::setFinished;
|
using CWorkerBase::setFinished;
|
||||||
|
|
||||||
QObject *m_owner; //!< owner, QPointer will detect if the owner is deleted
|
QObject *m_owner = nullptr; //!< owner, parent of the QThread
|
||||||
QString m_name; //!< worker's name
|
QString m_name; //!< worker's name
|
||||||
std::atomic<bool> m_enabled { true }; //!< marker it is enabled
|
std::atomic<bool> m_enabled { true }; //!< marker it is enabled
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user