Multicore en synchronisatie
Wat is juist over geheugenbewerkingen met acquire- en release-betekenis?
- AAcquire en release zijn beide de zwaarste barrières die alle lees- en schrijfacties volledig stoppen
- BAcquire is geheugen reserveren en release is het geheugen met free vrijgeven
- CLees- en schrijfacties na een acquire gaan niet vóór de acquire, en lees- en schrijfacties vóór een release gaan niet na de release
Antwoord en toelichting tonen
Antwoord: C. Lees- en schrijfacties na een acquire gaan niet vóór de acquire, en lees- en schrijfacties vóór een release gaan niet na de release
De bewerking waarmee een lock wordt genomen heeft de betekenis van acquire en die waarmee hij wordt losgelaten die van release. Bewerkingen na de acquire lekken niet naar vóór het nemen van de lock en bewerkingen vóór de release niet naar na het loslaten, zodat lees- en schrijfacties binnen het door de lock beschermde gebied daarbinnen blijven. Omdat het minder beperkend is dan een volledige barrière die beide richtingen stopt, kan de hardware de overige verwisselingen benutten om de prestaties te behouden.