Quelle est la différence entre les fonctions réentrantes et thread-safe ?
Quelle est la différence entre les fonctions réentrantes et thread-safe ?

Vidéo: Quelle est la différence entre les fonctions réentrantes et thread-safe ?

Vidéo: Quelle est la différence entre les fonctions réentrantes et thread-safe ?
Vidéo: ECE 459 Lecture 10: Reentrancy 2024, Novembre
Anonim

Fil sûr le code est un code qui peut être exécuté à partir de plusieurs fils en toute sécurité , même si les appels se produisent simultanément sur plusieurs fils . Réentrant code signifie que vous pouvez faire toutes les choses thread-safe le code peut faire mais aussi garantir sécurité même si tu appelles pareil fonction au sein du même fil.

D'ailleurs, qu'est-ce qu'une fonction réentrante ?

UNE fonction est rentrant s'il peut être invoqué alors qu'il est déjà en cours d'exécution. C'est un fonction est rentrant s'il peut être interrompu au milieu de l'exécution (par exemple, par un signal ou une interruption) et réinvoqué avant la fin de l'exécution interrompue.

À côté de ci-dessus, le thread QT est-il sûr? Remarques sur Qt De nombreux cours Qt les classes sont réentrantes, mais elles ne sont pas faites fil - en sécurité , parce que les faire fil - en sécurité entraînerait la surcharge de verrouillage et de déverrouillage répétés d'un QMutex. Par exemple, QString est réentrant mais pas fil - en sécurité . Certains Qt les classes et les fonctions sont fil - en sécurité.

Par conséquent, que sont les fonctions thread-safe ?

de wikipédia: Sécurité du fil est un concept de programmation informatique applicable dans le cadre de multi- fileté programmes. En particulier, il doit satisfaire le besoin de multiples fils d'accéder aux mêmes données partagées, et la nécessité d'avoir accès à une seule donnée partagée par un seul fil n'importe quand.

Quelles sont les fonctions récursives ?

En termes de programmation un fonction récursive peut être défini comme une routine qui s'appelle directement ou indirectement.

Conseillé: