Exclusive lock là gì?

Noun Database

Máy chủ cơ sở dữ liệu (database server) sử dụng hai loại khóa (lock) để quản lý quyền truy cập (access) vào buffer: share lock và exclusive lock. Trước khi cập nhật nội dung của khối dữ liệu (block) của buffer, tiến trình (process) phải có một exclusive lock trên khối dữ liệu, khóa (lock) phải được giải phóng (release) sau khi cập nhật hoàn tất. Chỉ một tiến trình được phép nhận một exclusive lock tại một thời điểm và hơn nữa khi một tiến trình có exclusive lock, không tiến trình nào khác có thể có shared lock trên khối dữ liệu (block). Do đó, exclusive lock chỉ có thể được cấp khi không có tiến trình nào khác có khóa (lock) trên khối dữ liệu của buffer.

Nếu một tiến trình yêu cầu một exclusive lock khi một khối dữ liệu đã bị khóa ở exclusive mode hoặc shared mode, thì yêu cầu đó sẽ được chờ xử lý cho đến khi tất cả các khóa trước đó được giải phóng (release). Nếu một tiến trình khác có exclusive lock, shared lock chỉ được cấp sau khi exclusive lock đã được giải phóng.

Learning English Everyday