Thursday, August 23, 2012

Parallel Programming with OmniThreadLibrary–How-tos

Good news for all OmniThreadLibrary fans – the long-awaited How-to chapter has been published.

Following topics are covered:

  • Background File Scanning
    Scanning folders and files in a background thread.
  • Async/Await
    How to write 'blocking' multithreaded code with a mechanism similar to .NET's `async`/`await`.
  • Web Download and Database Storage
    Multiple workers downloading data and storing it in a single database.
  • Parallel For with Synchronized Output
    Redirecting output from a parallel for loop into a structure that doesn't support multithreaded access.
  • Background Worker and List Partitioning
    Writing server-like background processing.
  • Parallel Data Production
    Multiple workers generating data and writing it into a single file.
  • Building a Connection Pool
    Using OmniThreadLibrary to create a pool of database connections.
  • QuickSort and Parallel Max
    How to sort an array and how to process an array using multiple threads.
  • Parallel Search in a Tree
    Finding data in a tree.
  • Multiple Workers with Multiple Frames
    Graphical user interface containing multiple frames where each frame is working as a frontend for a background task.
  • OmniThreadLibrary and Databases
    Using databases from OmniThreadLibrary.
  • OmniThreadLibrary and COM/OLE
    Using COM/OLE from OmniThreadLibrary.

Other changes and additions:

  • Added Release Notes section.
  • Fixed image sizes and line breaks in the High-level Multithreading chapter.

I will now spend few weeks finishing the Smart RTL chapter of the A Smart Book and then I’ll return to the Parallel Programming with OmniThreadLibrary. In the meantime you can express your interest in missing chapters in the poll on the right side of this blog.


  1. Those are some pretting good topics, thx.

  2. Hey gabr,

    Just bought a copy! I just realized that you have a book for OTL, it's really an awesome library, thanks to it I'm able to make my new text editor project ( fast!