Chỉ cần một câu hỏi chung, tôi đang phát triển một ứng dụng ASP.NET MVC 3 web mà đọc từ một tập tin cấu hình sử dụng Stream đọc bên trong một tuyên bố dùng để xử lý tự động như sau:Lo ngại về sự bế tắc với C# StreamReader
using (StreamReader sr = new StreamReader(filepath))
{
}
Quan tâm của tôi là khi nhiều người dùng đang chạy ứng dụng, một bế tắc sẽ xảy ra khi nhiều phiên bản của ứng dụng đang đọc các giá trị từ tệp cấu hình. Câu hỏi của tôi là, deadlocks có phải là vấn đề khi làm việc với lớp Stream Reader không? Trực giác tôi nghĩ không, vì tôi giả định Trình đọc luồng đang mở tệp ở chế độ chỉ đọc và không có quy trình bên ngoài nào ghi vào tệp cấu hình ngoài các chỉnh sửa thủ công. Tôi chỉ muốn chắc chắn liệu đây có phải là một vấn đề hay không. Bất kỳ cái nhìn sâu sắc được đánh giá cao.
Ngoài ra, nếu bạn thực sự quan tâm đến nhiều người đang đọc tệp cấu hình này, bạn nên đọc nó một lần trong khu vực an toàn của luồng và sau đó lưu vào bộ nhớ cache để sử dụng trong tương lai. – Tejs
@Tejs, rất tốt. Tôi sẽ cập nhật câu trả lời của tôi để đưa nó vào tài khoản. –