1. Qu'est-ce que la rentrée?
Lorsque la fonction est en cours d'exécution, pour des raisons externes ou des appels internes, elle entre à nouveau dans l'exécution de la fonction.
Deuxièmement, la scène de rentrée
- Plusieurs threads exécutent la fonction en même temps
- La fonction elle-même s'appelle
3. Qu'est-ce qui est réentrant
Sous la même entrée, la fonction produira le même résultat à chaque fois qu'elle est appelée.
châtaigne:
int add(int a, int b)
{
return a + b;
}
Chaque fois que add (1, 2) est appelé, le résultat est 3.
Quatrièmement, quelles caractéristiques doit avoir une fonction réentrante?
- N'utilisez pas d'objets statiques ou globaux non const
- Ne renvoie aucun pointeur vers des objets statiques ou globaux non const
- Se fier uniquement aux paramètres fournis par l'appelant
- Ne repose sur aucun verrou de ressource unique
- N'appelez aucune fonction non réentrante