Sections

Improving Performance Across Platforms with Qt and Multithreading

Qt is a cross-platform application framework.  With its intuitive functions for thread, data and object management, high-level concurrency APIs and cross-platform portability, Qt is an ideal choice for developing applications that squeeze maximum performance out of multi-core systems.

Icon - PDFFree Whitepaper

Improving Performance Across Platforms with Qt and Multithreading

 

Why use Qt for multithreaded development?


  • Powerful, straightforward threading classes
    Threaded programming can be difficult - Qt can help. The Qt API builds on C++ to provide intuitive, easy-to-understand functions for thread, data and object management.
  • Type-safe inter-thread communications
    Qt solves the problem of inter-object communication through a mechanism called Signals and Slots.  This mechanism can be used to make type-safe connections between threads.
  • Code once, target multiple desktop and embedded platforms
    Using Qt, you can write multithreaded applications once and deploy them across many desktop and embedded operating systems without rewriting the source code.
Multicore Chip

  • Parallel programming without low-level primitives
    Qt provides high-level APIs that make it possible to write multi-threaded programs without using low-level threading primitives such as mutexes, read-write locks, wait conditions, or semaphores.
  • Automatically scale to take maximum advantage of multi-core systems
    Programs written with Qt automatically adjust the number of threads used according to the number of processor cores available. This means that applications written today will continue to scale when deployed on multi-core systems in the future.
 

Learn More: Download a Free Whitepaper

Icon - PDF


Improving Performance Across Platforms with Qt and Multithreading
[PDF: 14 pages]

 

More and more software applications we use today perform multiple tasks concurrently and seamlessly. As the audio player streams audio from the net, it also decompresses it, updates the display, and scans the disk for new songs. A video editor responds to the user changing the storyboard, while previewing the video.  A code editor pops up appropriate prompts as the programmer types, even while it parses the code for highlighting the syntax of what has already been typed.

Any application that must perform multiple parallel tasks can benefit from multithreading. Multithreading can provide a solution to the more common problem of simply keeping the interface attractive while the program is busy. With the increasing popularity of multi-core processors, in not just desktops, but also high-end embedded systems, multithreading can improve not just response times, but also runtimes. However, the challenge of incorporating multithreading in an application can be daunting, especially in the absence of a high-level interface for managing threads.

Qt is a cross-platform application framework with a range of features, including C++ APIs that vastly simplify programming of multithreaded applications. By subclassing Qt’s base classes for multithreading, you inherit a rich set of capabilities based on our years of experience addressing the challenges of this type of programming.


Register below to receive the whitepaper via email.

 

 

(Required)
(Required)
(Required)
(Required)
(Required)
We periodically send out news, articles and information in newsletter format.
(Required)
Please select your state/province here. If not applicable, select N/A.
(Required)
Document Actions