Book Image

Expert Delphi - Second Edition

By : Marco Cantù, Paweł Głowacki
Book Image

Expert Delphi - Second Edition

By: Marco Cantù, Paweł Głowacki

Overview of this book

Master Delphi, the most powerful Object Pascal IDE and versatile component library for cross-platform native app development, by harnessing its capabilities for building natively compiled, blazingly fast apps for all major platforms, including Android, iOS, Windows, Mac, and Linux. Expert Delphi begins with a quick overview of Delphi, helping you get acquainted with the IDE and the Object Pascal language. The book then quickly progresses to more advanced concepts, followed by the architecture of applications and the FireMonkey library, guiding you through building server-side services, parallel programming, and database access. Toward the end, you’ll learn how to integrate your app with various web services and deploy them effectively. By the end of this book, you’ll be adept at building powerful, cross-platform, native apps for iOS, Android, Windows, and macOS—all from a single code base.
Table of Contents (21 chapters)
Free Chapter
1
Part 1: Building Blocks
6
Part 2: Going Mobile
12
Part 3: From Data to Services
19
Index

Using threads

When an operating system starts an app, it creates a process for it and starts a thread of execution, often called the main thread. As I mentioned before, in each process, there could be one or more threads running, which is more relevant at a time when all processors that power computers and mobile devices have multiple cores. This means that there could be multiple threads executing in parallel on each core. A typical app executes in one thread, which runs on just one processor core. All other cores do nothing.

There are, however, multiple reasons for using threads. The most important is not the extra performance, but keeping an app responsive while it is doing some heavy calculations or waiting for external information (for example, using an HTTP request). Another scenario is using multiple threads for faster calculations, which is more enticing but, as mentioned, also the most complex one.

Since the early versions of Delphi, there is a TThread class in the Runtime...