qtconcurrent

How to reduce CPU usage of a program?

I wrote a multi-threaded program which does some CPU heavy computation with a lot of floating point operations. More specifically, it's a program which compares animation sequences frame by frame. I.e. it compares frame data from animation A with all the frames in animation B, for all frames in animation A. I carry out this intensive ope...

Updating a QProgressDialog with a QFuture

What's the proper way for the main GUI thread to update a QProgressDialog while waiting for a QFuture. Specifically, what goes in this loop: QProgressDialog pd(...); QFuture f = ...; while (!f.isFinished()) { pd.setValue(f.progressValue()); // what goes here? } Right now I have a sleep() like call there, but that's not optimal (...

Large number of simultaneous long-running operations in Qt

I have some long-running operations that number in the hundreds. At the moment they are each on their own thread. My main goal in using threads is not to speed these operations up. The more important thing in this case is that they appear to run simultaneously. I'm aware of cooperative multitasking and fibers. However, I'm trying to...

exception generated with qtconcurrent and calling QTime:currentTime

I seem to be getting an exception generated only with a thread created with Qtconcurrent::run I have a class named FPSengine which has a method named FPSengine::getData() that is called by the main thread and 3 other threads (2 QThreads and 1 made with QtConcurrent::run()). Inside FPSengine::getData() I call QTime::currentTime(). If I c...

Choosing granularity with QtConcurrent

I'm looking to use QtConcurrent with a program having two or three levels of possible parallelism. At the highest level, a function L1() is called several times. The function L1() calls a function L2() several times, and the function L2() calls a function L3() several times. The bulk of the total running time is spent in L3(). The e...

QFutureWatcher::progressValue returns a positive integer, but the min/max are both zero

The QFuture is iterating over a bidirectional iterator, which I assume is the root of the problem. However, the docs say that QFutureWatcher::progressValue "returns a value between progressMinimum and progressMaximum". I am calling QtConcurrent::filtered like this: QtConcurrent::filtered(myMap.begin(), myMap.end(), filterFn). Does an...

QtConcurrent in QT for Symbian

Hi all! I have a question about supporting of QtConcurrent in Qt for Symbian. I use Qt 4.6.2 but I'dont understant how to use QtConcurrent. All works fine on Wice platform in the same version of QT, but doesn't work on Symbian. How to enable QtConcurrent, QFuture, QFutureWatcher? Big thanks in advance for your answers! ...