[Обзор][Процедуры и функции][Указатель] Описание модуля 'cthreads' (#rtl)

Описание модуля 'cthreads'

Устанавливает менеджером потоков POSIX как основанной потоковый менеджер

uses

  System;

  

Обзор

Модуль CThreads свои процедуры управления потоками (для POSIX систем и поддерживаемых библиотекой C) вместо реализованных в модуле System. Это гарантирует, что потокобезопасные функции из библиотек C будут работать, и в програме на FPC.

Сам по себе модуль не предлагает никакого API: при его инициализации в модуле System просто настраивается запись TThreadManager. Делается это с помощью вызова SetCThreadManager

Модуль cthreads должен быть включен в предложение uses основанной программы, лучше как самый первый модуль, и тогда его секция инициализации выполнит всю работу.

Обратите внимание, что в том числе этот модуль связывает вашу программу с системной библиотекой C.

Нет смысла использовать этот модуль в не POSIX системах: таких как Windows, OS/2 или DOS, поэтому он всегда должен находиться внутри директивы ifdef. Например:

program myprogram;

uses 
  {$ifdef unix}cthreads{$endif},
   classes, sysutils;

Среда IDE Lazarus автоматически вставляет это условие для каждой вновь создаваемой программы.


Документация создана: 05-10-2019