Многопоточность в Lazarus позволяет обрабатывать некоторые задачи в фоновом режиме во втором потоке, а пользователь может продолжать работу с помощью основного потока. 12
Один из потоков называется главным (Main Thread) и создаётся операционной системой после запуска приложения. 12 Главный поток должен быть единственным, который обновляет компоненты, взаимодействующие с пользователем, иначе приложение может зависнуть. 12
Некоторые преимущества использования многопоточности:
Для работы с многопоточностью в Lazarus с Linux, macOS и FreeBSD необходим модуль cthreads, который должен быть первым используемым модулем проекта (в исходнике программы, обычно файл .lpr). 12