Swift: NSCache

Feb 23 2023
Das Wörterbuch ist eine häufig verwendete Datenstruktur in der iOS-Entwicklung. Es ermöglicht den schnellen Zugriff auf Werte über Tasten.
Foto von Ruchindra Gunasekara auf Unsplash

Das Wörterbuch ist eine häufig verwendete Datenstruktur in der iOS-Entwicklung. Es ermöglicht den schnellen Zugriff auf Werte über Tasten. Ein Wörterbuch kann jedoch ein Problem haben: Wenn die Daten groß sind, beanspruchen sie den Speicher der Anwendung, und es ist nicht sehr effizient, wenn die meisten Werte nicht häufig verwendet werden. Erwägen Sie die Verwendung von NSCache, um das Speicherproblem zu lösen. Elemente im NSCache werden automatisch entfernt, wenn Speicher für die Anwendung benötigt wird.

Zum Beispiel,

Gegeben ist eine Liste von Feeds, jeweils mit einer Liste von Bild-URLs.

Das Remote-Laden der großen Bilder und das Konvertieren der Daten in UIImages ist teuer. Praktischerweise würden wir die Bilder zwischenspeichern, wenn wir später schnell wieder darauf zugreifen möchten.

Nehmen wir an, es handelt sich um qualitativ hochwertige Bilder, und jedes Bild ist 10 MB groß. Wenn ein Feed 10 Bilder enthält, sind das 100 MB pro Feed. Wenn wir 10 Feeds haben, sind das bereits 1 GB Speicher. Wenn wir die Bilder in einem Wörterbuch zwischenspeichern , ohne den Speicher manuell zu verwalten, stoßen wir schnell auf ein Speicherproblem.

Wenn wir die Bilder jedoch in einem NSCache zwischenspeichern , können wir mit dem Zwischenspeichern von Werten fortfahren, ohne uns Gedanken über das Speicherproblem machen zu müssen, da Elemente in einem NSCache automatisch entfernt werden, wenn uns der Speicher ausgeht.

So verwenden Sie NSCache :

Werden Sie Medium-Mitglied , lesen Sie weitere tolle Geschichten und steigern Sie Ihre Karriere.

Weitere Premium-Inhalte finden Sie unter: