iOSでNSCacheを使用していますが、キャッシュ用の.hファイルに次のコードがあります。
NSCache *_cache;
URLからダウンロードしている画像を.mのキャッシュに追加しています:
-(void)cacheFromURL:(NSURL*)url
{[_cache setCountLimit:50];
UIImage* newImage = [_cache objectForKey:url.description];
if( !newImage )
{
NSError *err = nil;
if(url!=Nil)
{
newImage=[UIImage imageWithData:[NSData dataWithContentsOfURL:url options:0 error:&err]];
}
if( newImage )
{
[_cache setValue:newImage forKey:url.description];
}
else
{
NSLog( @"UIImageView:LoadImage Failed: %@", err );
}
if(_cache==Nil)
{
NSLog(@"nil");
}
else
{
NSLog(@"cache is not nil");
}
}
}
しかし、私は毎回nilキャッシュを取得しています。ここで、ダウンロードプロセスをログで確認できます。なぜヌルキャッシュを取得するのですか?