Re: threads Kategorie: Programmierung (von nitraM - 11.11.2010 9:36) | ||
Als Antwort auf Re: threads von ChristianS - 10.11.2010 20:17 | ||
| ||
> Hallo, > eine Frage zu threads habe ich noch, das habe ich noch nicht richtig verstanden. > Wenn ich die Proritäten von threads ändern möchte, dann starte ich die mit > > run <i>Priorität;</i> > > Wenn ich das richtig verstanden habe, ist die Std.-Prio 32. Aber was heisst das jetzt konkret? > Habe ich sehr zeitkritische threads, wähle ich dann eine niedrige, oder eine hohe Priorität? Halo Christian einfach mal das Handbuch lesen... (Seite 73+) ...schnipp... 5.9.3 Prioritätssteuerung Die virtuelle Maschine der C-Control II Unit stellt jedem Thread soviel Rechenkapazität zur Verfügung, wie es seinem Prioritätswert entspricht. Ein Thread mit Priorität 32 kann genau 32 virtuelle Maschinenoperationen hintereinander ausführen, bevor ihn das System unterbricht und der nächste Thread an der Reihe ist. Zur Orientierung: die Anweisung a = b + c; wird in vier virtuellen Maschinenoperationen ausgeführt, wenn a,b und c vom gleichen numerischen Datentyp sind: 1. b auf den Stack laden 2. c auf den Stack laden 3. Addition 4. Ergebnis in a speichern Komplexere Anweisungen sind entsprechend umfangreicher. Das System kann einen Thread durchaus auch innerhalb einer Anweisung unterbrechen, z.B. vor der Addition im obigen Beispiel. Da jeder Thread mit seinem eigenen Stack arbeitet, gibt es dabei keine Probleme. Zur �nderung der Priorität eines Threads gibt es in C2 verschiedene Schlüsselworte. � run Das Schlüsselwort run wird in zwei Formen verwendet. Form 1 setzt die Priorität des angegebenen Threads auf den Standardwert 32. Diese Form dient in der Regel dazu, um von main-Threads aus andere Threads zu starten. Form 2 setzt die Priorität des aktuell ausgeführten Threads auf das Ergebnis des angegebenen numerischen Ausdrucks. Form 1: run ThreadName; z.B.: run blink2; Form 2: run numerischer Ausdruck; z.B.: run 100; Beachten Sie, da� ein stillstehender Thread (Priorität 0) sich niemals mit run selbst starten kann! ...schnapp... nitraM | ||
Antwort schreiben Antworten: Re: threads (von ChristianS - 11.11.2010 20:43) Re: threads (von nitraM - 12.11.2010 7:53) |