Documentation

ThreadPool-FP

Run ordinary Pascal procedures concurrently on a managed set of worker threads, without managing threads yourself.

Start HereInstallation & Quick Start

Install ThreadPool-FP and run your first parallel program.

Choose a PoolSimple vs Producer-Consumer

Pick the pool that matches your queue-size and backpressure needs.

TasksTasks, Batches & Ranges

Wait for work, coordinate groups, and process ranges efficiently.

BackpressureBounded Queues

Control memory and submission deadlines with a bounded queue.

RecipesCommon Tasks

Copy tested, compiled Pascal programs for real workloads.

API ReferencePublic API

Browse the Simple, Tasks, and Producer-Consumer declarations.

ThreadPool for Free Pascal banner: an ordered task queue splits across four parallel worker lanes and rejoins

ThreadPool-FP is a small, dependency-free thread pool library for Free Pascal and Lazarus. It runs ordinary procedures and object methods across a managed set of worker threads, so you can parallelise work without writing thread runbooks by hand.

It is practical software: four callback forms, two pool styles (unbounded, and a bounded producer-consumer queue), task handles with pending cancellation, worker-error capture, and a clear lifecycle contract.

Getting started#

  • Installation & Quick Start — add the units to your project and run the smallest complete program
  • Beginner Guide — learn the core ideas in order, from one queued callback to observable tasks and batches
  • Choose a Pool — decide between the unbounded ThreadPool.Simple pool and the bounded ThreadPool.ProducerConsumer pool
  • Cheat Sheet — the operational rules on one page

Guides#

Reference#

Internals#

Project#

This online documentation is versioned. The top-level site opens the current release under /0.9.1/, and the version selector in the header switches between published documentation releases.