This is a book about OmniThreadLibrary, a multithreading library for Embarcadero Delphi rapid development environment.

The book assumes that the reader has some understanding about the multithreading programming. If you are new to multithreading, an excellent introduction is Multithreading - The Delphi Way by Martin Harvey. That book is oldie, but goldie.

A more up-to-date overview of Delphi multithreading capabilities is published in the Delphi XE2 Foundations, Part 3 by Chris Rolliston, which is available on Amazon.

Formatting Conventions

This books covers the latest official OmniThreadLibrary release.

When a part of the book covers some other version, a [version tag] in superscript will indicate relevant version or versions. Version numbers (f.i. 2.1) are used for older releases and SVN revision numbers (f.i. r1184) are used for functionality that was added after the last official release.

A single version or revision number (f.i. [r1184]) indicates that the topic in question was introduced in this version and that it is still supported in the current release.

A range of two versions (f.i. [1.0-1.1]) indicates that the topic was introduced in the first version (1.0 in this example) and that it was supported up to the second version (1.1). After that, support for this topic was removed or it was changed so much that an additional section was added to describe the new functionality.

Work in Progress

This book is a work in progress - it is being published as it is written. When you buy this book, you are not only buying it ‘as is’ - in accordance with the Lean Publishing Manifesto you will get all subsequent ebook versions for free, forever.

To check the status of the book and to influence the writing process by voting on the importance of particular topics, visit the The Delphi Geek blog.

Learn More

A good way to learn more about the OmniThreadLibrary is to go through the demos. They are included in the standard OmniThreadLibrary distribution so you should have them on the disk already if you have installed OmniThreadLibrary. Each demo deals with very limited subset of OmniThreadLibrary functionality so they are farily easy to understand.

From time to time I’m presenting OmniThreadLibrary in live webinars. Recordings are available on Gumroad.

I am also frequently posting about the OmniThreadLibrary on my blog. All the relevant articles are tagged with the OmniThreadLibrary tag.

Support is also available on StackOverflow (make sure to tag the question with omnithreadlibrary) and on the Google+ OmniThreadLibrary community.

You can also stay in touch by following my Twitter account.


I teach various Delphi and Smart Mobile Studio topics. I’m also available for Delphi or Smart Mobile Studio consulting. Find more at