Çok kullanıcılı paylaşılan bir sistemde, aynı veri üzerinde çalışan birden fazla kullanıcı veri tutarsızlığına yol açabilir, bu nedenle, işlemlerin eşzamanlı yürütülmesini kontrol etmek için eşzamanlı işlemlerde kilitleme işlemleri gereklidir.
Paylaşılan Kilit:Adından da anlaşılacağı gibi, kilit paylaşılabilir, yazma işlemi paylaşılmamalıdır, paylaşılan veri rastgele yazıldığında bahsedilecek bir "kilit" yoktur, bu yüzden paylaşılan kilit okuma işlemi olan "paylaşma"dır; yani bu kilit eklendikten sonra kilit yazılamaz, ancak okunabilir, ayrıca sadece okunan kilit olarak da adlandırılabilir.
Özel kilitler:Özel kilit daha baskın, bu kilidi eklediğim sürece başka işlemler yapılamaz, neden? Veriyi değiştirmek istediğim için, başkalarının tekrar değiştirmesine izin vermemeliyim ve sadece okuma için kilitlenme eklememeliyim, çünkü sadece okuma kilitiyle yazma işlemleri yapamam.
Örneğin, işlem T1 verilere paylaşılan kilit eklerse ve işlemler T2 ve T3 verilere sırasıyla D2 ve D3 özel kilit eklerse, işlem T1 veriye paylaşılan kilit ekler (51). İşlem T2 çift veri (52).
(51) Cevap: D
A. D2 ve D3 ile kilit başarılı olur B. D2, D3 ve paylaşılan kilit başarılı oldu C. D2 ve paylaşılan kilit başarılı olur, D3 ekler kilitin başarısız olduğunu belirtir D. D2, D3 ve özel kilitler ile paylaşılan kilitler hepsi başarısız oluyor
(52) Cevap: C
A. D1, D3 ve paylaşılan kilit hepsi başarısız oldu B. D1, D3 ve paylaşılan kilit başarılı olur C. D1 artı paylaşılan kilit başarılı oldu, D3 başka bir kilit ekledi ve başarısız oldu D. D1 ve kilit başarılı oldu, D3 ise paylaşılan kilidi eklemeyi başaramadı
Paylaşılan kilit varsa, paylaşılan kilit ekleyebilirsiniz, ancak özel kilit ekleyemezsiniz. Eğer özel bir kilit varsa, ne paylaşılan kilit ne de münhasır kilit eklenemez.
|