Book Image

Qt5 C++ GUI Programming Cookbook - Second Edition

By : Lee Zhi Eng
Book Image

Qt5 C++ GUI Programming Cookbook - Second Edition

By: Lee Zhi Eng

Overview of this book

With the growing need to develop GUIs for multiple targets and multiple screens, improving the visual quality of your application becomes important so that it stands out from your competitors. With its cross-platform ability and the latest UI paradigms, Qt makes it possible to build intuitive, interactive, and user-friendly user interfaces for your applications. Qt5 C++ GUI Programming Cookbook, Second Edition teaches you how to develop functional and appealing user interfaces using the latest version of QT5 and C++. This book will help you learn a variety of topics such as GUI customization and animation, graphics rendering, implementing Google Maps, and more. You will also be taken through advanced concepts like asynchronous programming, event handling using signals and slots, network programming, various aspects of optimizing your application. By the end of the book, you will be confident to design and customize GUI applications that meet your clients' expectations and have an understanding of best practice solutions for common problems.
Table of Contents (15 chapters)

Data protection and sharing data between threads

Even though multithreading makes processes run asynchronously, there will be times where threads must be stopped and wait for other threads. This usually happens when both threads are modifying the same variable simultaneously. It is common to force threads to wait for one another to protect shared resources, such as data. Qt 5 also provides both low-level methods and high-level mechanisms to synchronize threads.

How to do it...

We will continue to use the code from the previous example project since we have already established a working program with multithreading:

  1. Open up myworker.h and add the following header:
#include <QObject>
#include <QDebug>
#include ...