Mitme kasutajaga jagatud süsteemis võib mitu kasutajat, kes töötavad sama andmega, põhjustada andmete ebajärjekindlust, mistõttu on samaaegsete operatsioonide lukustamistoimingud vajalikud tehingute samaaegse täitmise kontrollimiseks.
Jagatud lukk:Nagu nimest näha, saab lukku jagada, kirjutamistoimingut ei tohi jagada, niipea kui jagatud andmed kirjutatakse juhuslikult, pole "lukku", millest rääkida, seega jagatud lukk on lugemisoperatsioon "jagamine", st lukku ei saa enam kirjutada pärast selle luku lisamist, kuid seda saab lugeda, seda võib nimetada ka ainult lugemiseks mõeldud lukuks.
Eksklusiivsed lukud:Eksklusiivne lukk on domineerivam, seni kuni ma selle luku lisan, ei saa muid operatsioone läbi viia, miks? Kuna ma tahan andmeid muuta, kuna ma tahan neid muuta, ei tohi ma lasta teistel neid uuesti muuta ega lisada ainult lugemiseks mõeldud lukustust, sest ainult lugemislukuga ei saa ma kirjutamistoiminguid teha.
Näiteks kui tehing T1 lisab jagatud luku andmetele D1 ning tehingud T2 ja T3 lisavad eksklusiivsed lukud andmetele D2 ja D3, siis tehing T1 lisab andmetele jagatud luku (51). Tehingu T2 paari andmed (52).
(51) Vastus: D
A. D2 ja D3 koos lukku on edukad B. D2, D3 pluss jagatud lukk on edukad C. D2 pluss jagatud lukk õnnestub, D3 lisab, et lukk ebaõnnestub D. D2, D3 pluss eksklusiivsed lukud ja jagatud lukud kõik ebaõnnestuvad
(52) Vastus: C
A. D1, D3 pluss jagatud lukk kõik ebaõnnestusid B. D1, D3 pluss jagatud lukk õnnestuvad C. D1 pluss jagatud lukk õnnestus, D3 lisas veel ühe lukku, mis ebaõnnestus D. D1 pluss lukk õnnestus ning D3 ei lisanud jagatud lukku
Kui on ühine lukk, saad lisada jagatud lukku, aga eksklusiivset lukku lisada ei saa. Kui on eksklusiivne lukk, siis ei saa lisada ei jagatud ega eksklusiivset lukku.
|