Hi Tôi hiện đang xây dựng một ứng dụng trong đó có các thuộc tính sau:Làm thế nào để bạn xử lý các luồng riêng biệt tìm nạp dữ liệu trong iOS?
- sử dụng Core Data để lưu trữ
- có một thức ăn mà hiển thị một mục tại một thời điểm
- nếu ra khỏi mục, ứng dụng sẽ gọi tìm nạp từ máy chủ không đồng bộ
Xử lý tìm nạp không đồng bộ đã được chứng minh là khá phức tạp.
Hiện tại, chúng tôi đang lưu trữ các mục được tìm nạp trực tiếp từ máy chủ vào Dữ liệu chính.
Mỗi khi ứng dụng cần một mục mới, chúng tôi sẽ truy vấn Dữ liệu chính cho một mục không nhìn thấy.
Chúng tôi đang thấy một số tác động đáng kể liên quan đến hiệu suất của ứng dụng do truy vấn liên tục này của Dữ liệu cốt lõi. Chúng tôi đã nghĩ đến việc sử dụng một Array trong bộ nhớ và giữ một chỉ mục cho nó nhưng không đồng bộ khi tìm nạp một khi chúng ta ra khỏi mục được chứng minh là quá phức tạp vì chúng ta phải sử dụng khóa và các biện pháp đồng thời khác để giữ cho chuỗi mảng an toàn.
Các bạn có bất kỳ đề xuất nào về cách tôi có thể giảm tổng số cuộc gọi vào Dữ liệu chính không?
Bạn đã lược tả ứng dụng của mình và xác nhận tìm nạp chậm? –
Loại đồng thời nào bạn đang sử dụng? – mattyohe
Các triệu chứng của vấn đề hiệu suất là gì? CoreData có hệ thống bộ nhớ đệm của riêng nó trong MOC của nó. – Jeremy