En programmation simultanée, quelles sont les différences et les points communs (s'il y en a) entre une course et une serrure ? Une réponse détaillée serait appréciée;).Différence entre une course et un blocage
Répondre
Jetez un oeil à Description of race conditions and deadlocks
Race Conditions
Une condition de course se produit lorsque deux threads accéder à une variable partagée à en même temps. Le premier thread lit la variable et le deuxième thread lit la même valeur à partir de la variable . Ensuite, le premier thread et deuxième thread effectuent leurs opérations sur la valeur, et ils font la course pour voir ce thread peut écrire la valeur dernière à la variable partagée. La valeur de le thread qui écrit sa valeur est conservé, car le thread est écrit sur la valeur que le thread précédent a écrit.
Deadlocks
Un blocage se produit lorsque deux threads verrouiller chacun une variable différente au même temps et ensuite essayer de verrouiller la variable que l'autre fil déjà verrouillé. Par conséquent, chaque thread s'arrête en cours d'exécution et attend l'autre thread pour libérer la variable. Étant donné que chaque thread contient la variable que l'autre thread veut, rien ne se produit et les threads restent dans l'impasse.
- 1. Différence entre la course et le remplissage?
- 2. Différence entre un objet et un hachage?
- 3. Différence entre Orchestration longue et non transactionnelle
- 4. Différence entre un WebControl et un CompositeControl?
- 5. Différence entre une usine, un fournisseur et un service?
- 6. différence entre String.Empty et ""
- 7. libxml fait une différence entre « et »
- 8. Différence entre sqlreader et
- 9. VBA: Différence entre & et +
- 10. Différence entre référence et & *?
- 11. Différence entre Pop et Push un ViewController
- 12. Une différence entre 'b' et 'c'?
- 13. différence entre un local et local =
- 14. Différence entre un tableau d'octets et MemoryStream
- 15. Différence entre une HashMap et un dictionnaire ADT
- 16. Quelle est la différence entre une instance et un objet?
- 17. Différence entre une chaîne de requête et un fragment?
- 18. Quelle est la différence entre un URI et une URL?
- 19. Quelle est la différence entre une méthode et un protocole
- 20. Quelle est la différence entre une vue et un flux?
- 21. Différence entre l'interruption et l'événement
- 22. Différence entre UIViewController et UINavigationController?
- 23. Différence entre ServiceProcessInstaller et ServiceInstaller
- 24. Différence entre string.h et strings.h
- 25. Différence entre Scriptable et programmable
- 26. Différence entre -fileHandleForWritingAtPath: et fileHandleForUpdatingAtPath :?
- 27. Différence entre SwingWorker et SwingUtilities.invokeLater
- 28. Différence entre BOOST_CHECK_CLOSE et BOOST_CHECK_CLOSE_FRACTION?
- 29. Différence entre -Wconversion entre gcc et g ++
- 30. Différence entre FileStreamResult et FilePathResult?
jetez un coup d'œil à [cette question SO] (http://stackoverflow.com/questions/3130079/difference-between-racearound-condition-and-deadlock). c'est vif. – 0xa6a