Для работы c com портом мне необходимо реализовать очередь запросов. Нужны объекты синхронизации, а точнее семафоры.
С налёту не нашел ничего такого. Пришлось ковыряться.Модуль syncobjs
Содержит два класса:
1. TCriticalSection - критическая секция (описание)
procedure Acquire; // вход в секцию
procedure Release; // выход из секции
procedure Enter; // вход в секцию (кому как удобнее)
function TryEnter:Boolaen; // попытка входа в секцию (можно проверить занята ли секция)
procedure Leave; // выход из секции (кому как удобнее)
constructor Create; // создание
destructor Destroy; // уничтожение
2. TEventObject - событие (описание)
constructor Create; // создание события
destructor destroy; // уничтожение
procedure ResetEvent; // сброс события
procedure SetEvent; // установка события
function WaitFor(); // ожидание установки события
ManualReset: Boolean; // можно ли сбрасывать событие вручную
Модуль ipc- работает только для Linux (судя по документации). Нам не подходит.
Семафоры на данный момент не найдены.
Комментариев нет:
Отправить комментарий