Multicore en synchronisatie
Welke eigenschap van een lees-schrijflock (reader-writer lock) is juist?
- AEen willekeurig aantal schrijvende threads kan tegelijk binnen, maar slechts één lezende thread
- BEen willekeurig aantal alleen lezende threads kan tegelijk binnen, maar slechts één schrijvende thread, en dan kan niemand anders binnen
- CZowel bij lezen als bij schrijven kan altijd maar één thread binnen
Antwoord en toelichting tonen
Antwoord: B. Een willekeurig aantal alleen lezende threads kan tegelijk binnen, maar slechts één schrijvende thread, en dan kan niemand anders binnen
Alleen lezen tegelijk beschadigt de gegevens niet, dus een lees-schrijflock staat gelijktijdige uitvoering van lezers toe en maakt alleen schrijvers exclusief. Het parallellisme kan worden verhoogd bij gegevens die vaak worden gelezen en zelden gewijzigd, zoals een instellingentabel. Als lezers elkaar zonder onderbreking opvolgen, komt een schrijver soms nooit binnen, dus sommige implementaties geven voorrang aan schrijvers.