IsBusy

Prüft, ob der Dienst mit der Ausführung noch beschäftigt ist.

METHOD IsBusy : BOOL

Rückgabeparameter: TRUE => Beschäftigt, FALSE => Nicht beschäftigt (Completed oder Aborted oder Failed).

Beispiel (Auszug)

METHOD MyServiceReq : BOOL
VAR_INPUT
    tTimeout : TIME;
END_VAR
VAR_OUTPUT
    ipResult : I_AsyncServiceResultClass := _fbResult;
END_VAR
IF ipResult.IsBusy() THEN(* service allready running => abort *)
    _state := 0;
    ipResult.SetAbortedEx( stReason := ERROR_INVALID_STATE );
    RETURN;
END_IF
IF tTimeout = T#0S THEN(* invalid parameter => failure *)
    ipResult.SetFailedEx( stError := ERROR_INVALID_VALUE );
    RETURN;
END_IF
ipResult.SetBusy();
_fbTimer( IN := FALSE, PT := tTimeout );
_state := 1;
THIS^();
MyServiceReq := TRUE;