Điều gì, nếu có hiệu quả (hoặc khác) ngụ ý của việc tạo ra một mới ResourceManager
trên mỗi yêu cầu với new ResourceManger(myResourceType.FullName, myResourceType.Assembly)
vs sử dụng "thể hiện ResourceManager lưu trữ" trong lớp .Designer.cs tạo ra (MyResourceType.ResourceManager
)?Tôi có nên sử dụng ResourceManager được lưu trong bộ nhớ cache tĩnh hoặc một phiên bản mới cho mỗi yêu cầu web không? Nó có quan trọng không?
Tôi đang làm việc trong ngữ cảnh của ứng dụng ASP.NET MVC 3 sử dụng tệp .resx.
Chỉnh sửa: Tôi quan tâm đến các tác động ngoài chi phí cấp phát bộ nhớ cho đối tượng mới.
Edit: Nhìn vào tài liệu MSDN cho ResourceManager.ReleaseAllResources
, nó khẳng định rằng:
This method will shrink the working set in a running application. Any future resource lookups on this ResourceManager will be as extensive as the first lookup, since it will need to search and load resources again.
này dường như ngụ ý rằng việc mở cửa đầu tiên của tập tài nguyên là tốn kém, điều này gợi ý với tôi rằng việc tạo ra một mới người quản lý trên mỗi yêu cầu có thể tốn kém. Tuy nhiên, các tài liệu không đề xuất một phương pháp hay nhất liên quan đến tuổi thọ/phạm vi của các nhà quản lý tài nguyên.
Bạn có nói rằng phân bổ đối tượng là hàm ý CHỈ không? Tôi quan tâm nhiều hơn đến những thứ như lưu trữ tệp tài nguyên ... – ChaseMedallion
Tôi không biết về nó, nhưng bạn sẽ phải kiểm tra với các bộ đếm hiệu suất và các trình lược tả – eyossi