referenzanleitung val3 d28056202b - 06/2005 - eule-roboter.de
referenzanleitung val3 d28056202b - 06/2005 - eule-roboter.de
referenzanleitung val3 d28056202b - 06/2005 - eule-roboter.de
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
REFERENZANLEITUNG VAL3 - Version 5.2<br />
Syntax<br />
void taskCreate string Name, num Priorität, Programm(...)<br />
void taskCreate , , Programm([p1] [,p2])<br />
Funktion<br />
Erstellt und startet die Task Name.<br />
Name muss 1 bis 12 Zeichen zwischen "a..zA..Z0..9_" besitzen. Es darf keine an<strong>de</strong>re Task mit <strong>de</strong>m gleichen Namen<br />
geben.<br />
Die Ausführung von Name beginnt mit <strong>de</strong>m Aufruf von Programm mit <strong>de</strong>n spezifischen Parametern. Für<br />
Referenzparameter dürfen keine lokalen Variablen verwen<strong>de</strong>t wer<strong>de</strong>n.<br />
Die Task en<strong>de</strong>t vorprogrammiert mit <strong>de</strong>r letzten Zeile von Programm bzw. vorher, wenn diese ausdrücklich gelöscht<br />
wur<strong>de</strong>.<br />
Priorität muss zwischen 1 und 100 liegen. Bei je<strong>de</strong>m sequentiellen Ordnen <strong>de</strong>r Tasks führt das System die in Priorität<br />
angegebene Zahl von Programmzeilen aus, bzw. weniger, wenn eine sperren<strong>de</strong> Anweisung angetroffen wird (siehe<br />
Kapitel Sequentielles Ordnen).<br />
Wenn das System nicht genügend Speicherplatz zum Erstellen <strong>de</strong>r Task vorfin<strong>de</strong>t, Name ungültig o<strong>de</strong>r bereits<br />
vergeben o<strong>de</strong>r Priorität ungültig ist, wird eine Fehlermeldung erzeugt.<br />
Parameter<br />
string Name Ausdruck <strong>de</strong>s Typs Zeichenkette<br />
num Priorität Numerischer Ausdruck<br />
Programm Name eines Programms <strong>de</strong>r Applikation<br />
p1 Ausdruck <strong>de</strong>s in Programm angegebenen Typs<br />
Zum Beispiel<br />
program affiche(string& sTexte)<br />
begin<br />
putln(sTexte)<br />
sTexte = "stop"<br />
end<br />
string sMessage<br />
program start()<br />
begin<br />
sMessage = "start"<br />
taskCreate "t1", 10, affiche(sMessage) // ergibt « start »<br />
wait(taskStatus("t1") == -1) // Wartet auf das En<strong>de</strong> von t1<br />
putln(sMessage) // ergibt "stop"<br />
end<br />
Siehe auch<br />
void taskSuspend(string Name)<br />
void taskKill(string Name)<br />
num taskStatus(string Name)<br />
D28056202B - <strong>06</strong>/<strong>2005</strong> 59 / 122