Tôi đã hoàn tất chuyển đổi ứng dụng của mình để sử dụng lớp CoreData cho một kho dữ liệu nhỏ mà tôi muốn sử dụng. Tôi có một số lo ngại về hiệu suất và cách sử dụng tốt nhất. Cụ thể: Tôi có rất nhiều lần chạy mà tôi đọc từ các thuộc tính đĩa trong các tệp: mỗi thuộc tính sẽ tạo một đối tượng mới, trừ khi một đối tượng thuộc loại đó và giá trị đó đã tồn tại. Vì vậy, đối với mỗi tệp tôi đọc, tôi: thực hiện tìm nạp để kiểm tra xem đối tượng được quản lý đó đã tồn tại hay chưa; nếu có kết thúc, nếu không tôi tạo đối tượng, gán giá trị và lưu ngữ cảnh.Hiệu năng CoreData về tiết kiệm bối cảnh
Hiện tại, tôi lưu ngữ cảnh một lần cho mỗi lần tôi tạo đối tượng mới, vì vậy nó xảy ra nhiều hơn hoặc ít hơn mười lần (đối với mười thuộc tính) cho mỗi tệp đọc (có thể là hàng trăm). Sẽ tốt hơn nếu giảm bớt các điểm lưu ngữ cảnh, có thể một lần cho tệp thay vì một lần cho thuộc tính? Tôi không biết chi phí của hoạt động này vì vậy tôi không biết nếu là ok để làm điều này rất thường xuyên, hoặc làm thế nào để tìm ra thời gian dành cho điều này (có thể với các công cụ? Không thực sự biết làm thế nào).
Vâng, điểm dừng đột ngột/đình chỉ chính xác là điều tôi lo lắng. Dù sao tôi sẽ đồng ý rằng nó là đủ để tiết kiệm tối đa một lần cho mỗi tập tin, nhóm tất cả các thuộc tính trong một "chạy" duy nhất. Cảm ơn bạn cho con trỏ đến phần hiệu suất cũng. – Andy
Liên kết Hiệu suất Dữ liệu Chính hiện tại: https://developer.apple.com/library/prerelease/watchos/documentation/Cocoa/Conceptual/CoreData/Performance.html – jQwierdy