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:
parent
168855901a
commit
ab813eab98
@ -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()
|
||||
|
Loading…
x
Reference in New Issue
Block a user