Я использую OmniThreadLibrary 2.09 в своей dll, основное приложение и dll используют один и тот же SimpleShareMem
менеджер памяти.
Я создал свой собственный монитор с этим кодом:
FMonitor: TOmniEventMonitor;
...
FMonitor := TOmniEventMonitor.Create(nil);
Когда я пытаюсь создать новую задачу с помощью этого монитора, я получаю сообщение об ошибке «Задачу можно отслеживать только с помощью одного монитора».
FTask := OtlTaskControl.CreateTask(TaskWorker)
.OnMessage(
procedure(const ATaskControl: IOmniTaskControl; const AMsg: TOmniMessage)
begin
...
end)
.MonitorWith(FMonitor) // <----- Error
.OnTerminated(
procedure (const ATaskControl: IOmniTaskControl)
begin
...
end)
.Run();
Как я могу контролировать свою задачу с помощью собственного монитора?