Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
NSCacheʹ͍ͭͯ id:ninjinkun / @ninjinkun
Slide 2
Slide 2 text
ΞδΣϯμ • NSCacheͱ • ͍ํ • αϯϓϧ • http://github.com/ninjinkun/NSCacheTest • InstagramͷΞϓϦొ͕ඞཁ
Slide 3
Slide 3 text
֓ཁ NSCacheͱ • ΩϟογϡϞδϡʔϧ • iOS 4.0͔Βಋೖ • εϨουηʔϑ • ֨ೲ্ݶΛઃఆՄೳ
Slide 4
Slide 4 text
༻్ NSCacheͱ • ը૾Ωϟογϡ • αΠζ͕Ͱ͔͍ͷͰΦϯϝϞϦʹͣͬͱஔ͚ͳ͍ • μϯϩʔυͨ͠ͷΛҰ࣌తʹอଘ͢Δ • ͦͷଞɺ༰ྔ͕େ͖ͯ͘ɺ͍Ζ͍ΖͳεϨου͔ΒΞ Ϋηε͞Εͦ͏ͳͷͳΒԿͰ…
Slide 5
Slide 5 text
͍ํ • ίʔυΛݟͤΔ • ImageLoaderΫϥεʹ͍ͩ͘͝͞
Slide 6
Slide 6 text
্ݶͷܾఆ ͍ํ • ΦϒδΣΫτͷݸ • setCountLimit: • ΦϒδΣΫτͷίετ • setTotalCostLimit • ίετset࣌ʹࣗͰܾΊΔ • setObject:forKey:cost:
Slide 7
Slide 7 text
Evictionͷ݅ ͍ํ • Կݸ͔ͷΞϧΰϦζϜΛΈ߹Θ͍ͤͯΔΒ͍͠ • جຊతʹLRU (Least Recently Used) Ά͍ • ࠷ޙʹͬͨͷΛ͢ • ίετ or αΠζ্͕ݶΛ͑ͨΒevict
Slide 8
Slide 8 text
NSCacheͱ࿈ܞ͢ΔΫϥε ͓·͚ • NSDiscardableContent • ഁغՄೳͳσʔλΛදݱ͢Δϓϩτίϧ • ഁغՄೳ͔Λ͍߹ΘͤΔϝιου͕͋Δ • NSPurgeableData • NSMutableDataͷࢠΫϥε
Slide 9
Slide 9 text
·ͱΊ • ը૾ΩϟογϡʹNSCache • εϨουηʔϑ • লϝϞϦ • LRU