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

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

Mandelbrot Example

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

Queued Custom Type Example

Demonstrates multi-thread programming using Qt

Queued Custom Type Example

Demonstrates multi-thread programming using Qt

Semaphores Example

Demonstrates multi-thread programming using Qt

Semaphores Example

Demonstrates multi-thread programming using Qt

Wait Conditions Example

Demonstrates multi-thread programming using Qt

Wait Conditions Example

Demonstrates multi-thread programming using Qt

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.

Image Scaling Example

Demonstrates how to asynchronously scale images

Image Scaling Example

Demonstrates how to asynchronously scale images

Map Example

Demonstrates how to scale images synchronously

Map Example

Demonstrates how to scale images synchronously

QtConcurrent Progress Dialog Example

Demonstrates how to monitor the progress of the active processes

QtConcurrent Progress Dialog Example

Demonstrates how to monitor the progress of the active processes

QtConcurrent Word Count Example

Demonstrates how to use the map-reduce algorithm

QtConcurrent Word Count Example

Demonstrates how to use the map-reduce algorithm

Run Function Example

Demonstrates how to run standard functions concurrently

Run Function Example

Demonstrates how to run standard functions concurrently

Examples marked with an asterisk (*) are fully documented.

© 2019 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.