qt5base-lts/tests/auto/corelib/thread
Andrei Golubev 385f0732d9 Add QPromise implementation
QPromise and QFuture created from it share the same internal state
(namely, QFutureInterface object). QPromise provides high-level
management of the shared resource, ensuring thread-safe behavior
on construction and destruction (also taking into account
QFuture::waitForFinished() semantics).

QFuture acts as a primary controller of QPromise via action
initiating methods such as suspend() or cancel(). QPromise is
equipped with methods to check the status, but the actual
handling of QFuture action "requests" is user-defined.

[ChangeLog][QtCore][QPromise] Added QPromise class to accompany
QFuture. It allows one to communicate computation results and
progress to the QFuture via a shared state.

Task-number: QTBUG-81586
Change-Id: Ibab9681d35fe63754bf394ad0e7923e2683e2457
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2020-06-09 17:21:38 +03:00
..
qatomicint Merge remote-tracking branch 'origin/dev' into wip/cmake 2019-11-19 13:53:21 +01:00
qatomicinteger cmake: add more tests in corelib/thread 2019-10-04 06:27:19 +00:00
qatomicpointer Merge remote-tracking branch 'origin/dev' into wip/cmake 2019-11-19 13:53:21 +01:00
qfuture Deprecate the pause-related APIs of QFuture* classes 2020-06-04 22:32:43 +02:00
qfuturesynchronizer cmake: add more tests in corelib/thread 2019-10-04 06:27:19 +00:00
qfuturewatcher Deprecate the pause-related APIs of QFuture* classes 2020-06-04 22:32:43 +02:00
qmutex Regenerate projects one last time before merge 2020-02-12 17:30:49 +00:00
qmutexlocker cmake: add more tests in corelib/thread 2019-10-04 06:27:19 +00:00
qpromise Add QPromise implementation 2020-06-09 17:21:38 +03:00
qreadlocker cmake: add more tests in corelib/thread 2019-10-04 06:27:19 +00:00
qreadwritelock Remove winrt 2020-06-06 20:25:49 +02:00
qresultstore Regenerate projects one last time before merge 2020-02-12 17:30:49 +00:00
qsemaphore Merge remote-tracking branch 'origin/dev' into wip/cmake 2020-01-29 16:57:27 +01:00
qthread Remove winrt 2020-06-06 20:25:49 +02:00
qthreadonce cmake: add more tests in corelib/thread 2019-10-04 06:27:19 +00:00
qthreadpool Remove QThreadPool::cancel() 2020-06-05 20:57:32 +02:00
qthreadstorage Remove winrt 2020-06-06 20:25:49 +02:00
qwaitcondition cmake: add more tests in corelib/thread 2019-10-04 06:27:19 +00:00
qwritelocker cmake: add more tests in corelib/thread 2019-10-04 06:27:19 +00:00
CMakeLists.txt Add QPromise implementation 2020-06-09 17:21:38 +03:00
thread.pro Add QPromise implementation 2020-06-09 17:21:38 +03:00