可可-加快加载数据图像数组的速度

时间:2018-07-31 06:21:13

标签: swift cocoa store nscache

我正在构建一个使用NSCollectionView从iTunes打印专辑插图的应用程序。我通过iTunesLibrary框架从iTunes获得了插图数据,然后将这些NSImage存储到一个数组中。问题是启动程序时,它必须从iTunes重新加载数据,这非常慢。我有345张专辑图片要加载,因此尽管iTunes花了1-2s的时间完成了大约5-6s的加载。

磁盘上是否有任何保存数据的方法?

这是我的代码:

override func viewDidLoad() {
    super.viewDidLoad()

    let cache = NSCache<NSString, NSArray>()

    if let cacheVersion = cache.object(forKey: "AlbumData")
    {
        print(1)
        myObject = cacheVersion as! [NSImage]
    }
    else
    {
        print(2)

        locationURL = getsongURL(value: playlist_name)

        myObject = getImageFromURL(value: locationURL)

        cache.setObject(myObject as NSArray, forKey: "AlbumData")

    }

}

我正在使用NSCache存储数据,但是没有用。

0 个答案:

没有答案