#include "contextswitch.h"
#include "list.h"
Aller au code source de ce fichier.
Définitions des macros | |
| #define | FredTHREAD_NIL (FredThread)NIL |
| Définition du thread inexistant. | |
| #define | FredQueueGetFirst(Q) (FredThread)FredListGetFirst((FredList*)Q) |
| Retirer le premier thread d'une file d'attente. | |
| #define | FredQueuePutLast(Q, th) FredListPutLast((FredList*)Q,(FredCell*)th) |
| Insérer un thread déja bloqué dans une file d'attente. | |
| #define | FredQueueEmpty(Q) FredListEmpty((FredList*)Q) |
| Tester une queue à vide de threads. | |
| #define | FredQueueInit(Q) FredListInit((FredList*)Q); |
| Initialiser une queue vide de threads. | |
| #define | FredMutexOn() FredMaskOn() |
| Début de section critique. | |
| #define | FredMutexOff() FredMaskOff() |
| Fin de section critique. | |
Définitions des types | |
| typedef void *(* | FredRunnable )(void *) |
| Le type d'une procédure initiale de thread. | |
| typedef FredThreadDesc * | FredThread |
| L'identité d'un thread est un pointeur sur son descripteur. | |
| typedef FredList | FredQueue |
| Définition du type queue de threads. | |
Fonctions | |
| void | FredThreadSuspend (FredQueue *q) |
| Suspendre le thread courant dans une file. | |
| void | FredThreadWakeUp (FredQueue *q) |
| Réveille un thread bloqué. | |
| void | FredThreadExit (void *) |
| Terminaison immédiate du thread courant. | |
| void | FredThreadYield () |
| Le thread courant passe la main à un autre thread. | |
| void | FredInitialize () |
| Initialisation de FRED. | |
| void | FredWaitTerminate () |
| Attente de fin d'exécution de tous les threads créés. | |
| void | FredAbort (char *) |
| Arrêt brutal du programme et impression d'un message d'erreur. | |
1.2.17