QFuture that can be cancelled and report progress
The QFuture class has methods such as cancel() , progressValue() , etc. These can apparently be monitored via a QFutureWatcher . However, the documentation for QtConcurrent::run() reads: Note that the QFuture returned by QtConcurrent::run() does not support canceling, pausing, or progress reporting. The QFuture returned can only be used to query for the running/finished status and the return value of the function. I have looked in vain for what method actually can create a QFuture that can be cancelled and report progress for a single long-running operation. (It looks like maybe QtConcurrent: