Trở về đầu

foto1 foto2 foto3 foto4 foto5
Giảng viên
Nguyễn Tô Sơn - Thủ khoa Đại học Sư phạm Hà Nội
ĐT: 091.333.2869

HỌC TIN CÙNG THỦ KHOA

Thành công không phải đích đến, mà là cả một hành trình

Tìm kiếm

Việc tranh chấp tài nguyên máy tính thường gặp khi cùng một thời điểm có nhiều giao tác tác động đến cùng một file hoặc cùng một cơ sở dữ liệu (ví dụ: tạo form báo cáo để nhiều người báo cáo qua biểu mẫu này thông qua Internet). Lúc đó, hệ điều hành/hệ quản trị cơ sở dữ liệu phải quyết định thực hiện giao tác nào và hủy bỏ giao tác nào (hệ điều hành/hệ quản trị cơ sở dữ liệu chỉ chọn một giao tác duy nhất để thực hiện). Vì vậy, các giao tác còn lại không được thực hiện dẫn đến hiện tượng mất mát dữ liệu người nhập. Mặc dù vậy, nhưng hệ điều hành/hệ quản trị cơ sở dữ liệu có thể không báo lỗi trong tình huống này khiến lập trình viên không hiểu lý do tại sao lại mất dữ liệu của người dùng khi nhập, gây khó chịu cho cả người sử dụng phần mềm (người nhập) và lập trình viên.

Xử lý tranh chấp tài nguyên trong tình huống này có thể sử dụng một trong hai cách sau đâu:

Cách thứ 1 - dễ: Sau khi thực hiện giao tác, đọc lại file/cơ sở dữ liệu để kiểm tra xem dữ liệu đã được nhập vào file/cơ sở dữ liệu chưa. Nếu chưa được nhập vào thì lập trình viên thông báo ra một lỗi cho người sử dụng biết.

Cách thứ 2 - phức tạp hơn: khi một giao tác tác động tới một file thì các giao tác khác phải chờ để thực hiện. Việc làm này tuy thuận lợi cho người nhập (người sử dụng) nhưng lại phức tạp đối với lập trình viên. Mặc dù cài đặt phức tạp như vậy nhưng đôi khi lại rất dễ dẫn đến hiện tượng deadlock (khóa chết). Vì vậy, lời khuyên bạn nên sử dụng cách thứ 1.

Giảng viên Nguyễn Tô Sơn, Thủ khoa Đại học Sư phạm Hà Nội. Điện thoại: 091.333.2869