Threading and Concurrent Programming Examples

Qt makes it easy to write multithreaded applications. Signals and slots can be used to safely communicate between threads in your application.
| Mandelbrot example demonstrates multi-thread programming using Qt. It shows how to use a worker thread to perform heavy computations without blocking the main thread's event loop | |
| Producer and Consumer using Semaphores example shows how to use QSemaphore to control access to a circular buffer shared by a producer thread and a consumer thread | |
| Producer and Consumer using Wait Conditions example shows how to use QWaitCondition and QMutex to control access to a circular buffer shared by a producer thread and a consumer thread | |
| Queued Custom Type example shows how to send custom types between threads with queued signals and slots | 
The QtConcurrent namespace includes a collection of classes and functions for straightforward concurrent programming.
These examples show how to apply the basic techniques of concurrent programming to simple problems.
| Demonstrates how to asynchronously download and scale images | |
| Demonstrates how to monitor the progress of concurrent operations | |
| Demonstrates how to use the map-reduce algorithm |