Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ pthread_setprio(3-thr) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

pthread_setprio(3-thr)                               pthread_setprio(3-thr)

NAME
     pthreadsetprio - Aktuelle Priorität eines Thread ändern

SYNTAX
     #include <pthread.h>

     int pthreadsetprio(
          pthreadt thread,
          int priority);

PARAMETER
     thread    Thread, dessen Priorität geändert wird.

     priority  Neuer Prioritätswert für den in thread angegebenen Thread.
               Der Prioritätswert ist von der Scheduling-Strategie abhän-
               gig. Gültige Werte liegen innerhalb der folgenden Bereiche:

               PRIOTHERMIN <= priority <= PRIOTHERMAX

               PRIFIFOMIN <= priority <= PRIFIFOMAX

               PRIRRMIN <= priority <= PRIRRMAX

               PRIFGMINNP <= priority <= PRIFGMAXNP

               PRIBGMINNP <= priority <= PRIBGMAXNP

     Wenn Sie einen neuen Thread erstellen, ohne ein Objekt für die
     Thread-Attribute anzugeben, das ein geändertes Prioritätsattribut ent-
     hält, liegt die Standardpriorität für den neu erstellten Thread in der
     Mitte zwischen PRIOTHERMIN und PRIOTHERMAX (die Mitte zwischen
     Minimum und Maximum für die Strategie SCHEDOTHER).

     Wenn Sie diese Routine zur Angabe einer Mindestpriorität oder einer
     maximalen Priorität aufrufen, verwenden Sie hierzu das entsprechende
     Symbol; zum Beispiel PRIFIFOMIN oder PRIFIFOMAX. Verwenden Sie zur
     Angabe eines Werts zwischen Minimum und Maximum einen entsprechenden
     arithmetischen Ausdruck. Wenn Sie beispielsweise eine Priorität in der
     Mitte zwischen Minimum und Maximum für die Scheduling-Strategie für
     zyklische Weiterschaltung (Round Robin) angeben wollen, geben Sie in
     der Syntax Ihrer Programmiersprache folgendes Konzept an:

          prirrmid = (PRIRRMIN + PRIRRMAX + 1)/2

     Ergibt sich aus dem Ausdruck ein Wert, der außerhalb des Bereichs zwi-
     schen Minimum und Maximum liegt, führt dies bei Verwendung des Aus-
     drucks zu einem Fehler.

BESCHREIBUNG
     Die Routine pthreadsetprio() ändert die aktuelle Priorität eines
     Thread. Ein Thread kann seine eigene Priorität über die von
     pthreadself() zurückgegebene ID ändern.



Seite 1                      Reliant UNIX 5.44               Gedruckt 11/98

pthread_setprio(3-thr)                               pthread_setprio(3-thr)

     Die Änderung der Priorität eines Thread kann zur Folge haben, daß die-
     ser ausgeführt oder durch einen anderen Thread abgelöst wird. Die Aus-
     wirkungen unterschiedlicher Prioritätswerte hängen von der jeweiligen
     Scheduling-Priorität ab, die dem Thread zugeordnet ist. Die ursprüng-
     liche Scheduling-Priorität wird durch Aufrufen der Routine
     pthreadattrsetprio() gesetzt.

     Beachten Sie, daß die Routine pthreadattrsetprio() das Prioritätsat-
     tribut setzt, mit dem die Priorität eines neu erstellten Thread einge-
     richtet wird. Die Routine pthreadsetprio() dagegen ändert die Priori-
     tät eines bereits vorhandenen Thread.

RÜCKGABEWERTE
     Bei erfolgreicher Ausführung gibt diese Routine die vorherige Priori-
     tät zurück. Wenn die Funktion fehlschlägt, kann errno auf einen der
     folgenden Werte gesetzt werden:

     EINVAL    Der durch thread angegebene Wert ist ungültig.

     ENOTSUP   Es wird versucht, die Priorität auf einen nicht unterstütz-
               ten Wert zu setzen.

     ESRCH     Der durch thread angegebene Wert verweist nicht auf einen
               vorhandenen Thread.

     EPERM     Der Aufrufer verfügt nicht über die Berechtigungene, die zum
               Setzen der Priorität für den angegebenen Thread erforderlich
               sind.

SIEHE AUCH
     pthreadattrsetprio(3-thr), pthreadattrsetsched(3-thr),
     pthreadcreate(3-thr), pthreadself(3-thr),
     pthreadsetscheduler(3-thr).





















Seite 2                      Reliant UNIX 5.44               Gedruckt 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026