Einzelnen Beitrag anzeigen

WoGe

Registriert seit: 16. Jun 2005
Ort: Kelkheim
178 Beiträge
 
Delphi 10.3 Rio
 
#1

TOmniWorker mit property TNotifyEvent

  Alt 2. Jan 2014, 15:33
Ist es erlaubt/sinnvoll einem TOmniWorker ein property vom Typ TNotifyEvent zuverpassen?

Delphi-Quellcode:
  TIPosProvider = class(TOmniWorker)
  strict private
    aiMessage: string;
  private
    fOnTimer2: TNotifyEvent;
    procedure SetOnTimer2(const Value: TNotifyEvent);
  public
    function Initialize: boolean; override;
    procedure OMChangeMessage(var msg: TOmniMessage); message MSG_CHANGE_MESSAGE;
    procedure OMSendMessage(var msg: TOmniMessage); message MSG_SEND_MESSAGE;
    procedure OMTimer2(var msg: TOmniMessage); message MSG_TIMER_1;
    property OnTimer2 : TNotifyEvent read fOnTimer2 write SetOnTimer2; //<-----
  end;
Delphi-Quellcode:
procedure TIPosProvider.OMTimer2(var msg: TOmniMessage);
begin
  Task.ClearTimer(1);
// Task.Comm.Send(1, 'One-shot timer');
// Task.Comm.Send(MSG_WO_DISPATCH, 'LED');
  if Assigned(fOnTimer2) then
  begin
    fOnTimer2(Self);
  end;
end;
Ich konnte hierfür kein Beispiel finden.
Da mein Testprog funktioniert und ich eigentlich davon ausgehe, dass diese Procedure im Kontext des Hauptthreads läuft, müsste es eigentlich erlaubt sein.

Grüße
wo
  Mit Zitat antworten Zitat