QCoreApplication: improve docs on exit() and quit() thread-safety

Reporter of QTBUG-91771 was confused.

Change-Id: I26b8286f61534f88b649fffd166c4368167a5638
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
(cherry picked from commit 183df80b9c1439202ae6b967774123cb313e9097)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Thiago Macieira 2021-03-14 09:48:00 -07:00 committed by Qt Cherry-pick Bot
parent 168855901a
commit ab813eab98

View File

@ -1400,6 +1400,12 @@ void QCoreApplicationPrivate::execCleanup()
function \e does return to the caller -- it is event processing that
stops.
Note also that this function is not thread-safe. It should be called only
from the main thread (the thread that the QCoreApplication object is
processing events on). To ask the application to exit from another thread,
either use QCoreApplication::quit() or instead call this function from the
main thread with QMetaMethod::invokeMethod().
\sa quit(), exec()
*/
void QCoreApplication::exit(int returnCode)
@ -1951,6 +1957,8 @@ void QCoreApplicationPrivate::maybeQuit()
}
/*!
\threadsafe
Asks the application to quit.
The request may be ignored if the application prevents the quit,
@ -1962,7 +1970,7 @@ void QCoreApplicationPrivate::maybeQuit()
code 0 (success).
To exit the application without a chance of being interrupted, call
exit() directly.
exit() directly. Note that method is not thread-safe.
It's good practice to always connect signals to this slot using a
\l{Qt::}{QueuedConnection}. If a signal connected (non-queued) to this slot
@ -1975,6 +1983,11 @@ void QCoreApplicationPrivate::maybeQuit()
\snippet code/src_corelib_kernel_qcoreapplication.cpp 1
\b{Thread-safety note}: this function may be called from any thread to
thread-safely cause the currently-running main application loop to exit.
However, thread-safety is not guaranteed if the QCoreApplication object is
being destroyed at the same time.
\sa exit(), aboutToQuit()
*/
void QCoreApplication::quit()