/ / Qu'arrive-t-il à un thread lorsqu'un up est terminé sur son mutex? - multithreading, thread-safety, mutex, section critique

Qu'arrive-t-il à un thread lorsqu'un up-up est effectué sur son mutex? - multithreading, thread-safety, mutex, section critique

Les mutex sont utilisés pour protéger les sections critiques. Disons qu'un bas a déjà été fait sur un mutex, et bien que le fil qui l'a fait se trouve dans le CS, 10 autres fils sont juste derrière et font un down sur le mutex, en s'endormant. Quand le premier fil quitte la section critique et effectue une montée sur le mutex, les 10 threads se réveillent-ils et résument-ils simplement ce qu’ils étaient sur le point de faire, à savoir entrer dans la section critique? section en même temps?

Réponses:

1 pour la réponse № 1

Non seulement un Le fil va se réveiller et prendre possession du mutex. Les autres resteront endormis. Quel fil est celui qui se réveille est généralement non déterministe.

Ce qui précède est une généralisation et les détails de la mise en œuvre seront différents dans chaque système. Par exemple, en Java, comparez Objet # notify () et Objet # notifyAll ().