The problem with precaching is that if you precache and the user does something else, you pay a performance cost, say you precache the next screen worth of covers and the user decides to do a search instead or change the sorting. Or jump several screens.
Then the render thread will have to finish rendering the precached covers before it can get to rendering the current screen of covers.
More importantly, scrolling just one screen of covers is instant with the disk cache (even on my three year old netbook), slowness only happens if you scroll through several screens at once, which precaching the next screen wont help with anyway. The only way around that is to increase the size of the memory cache and pre-fill it, which wastes *a lot* of RAM and CPU.
To put it another way, I can scroll through the disk cached covers at a speed that is faster than my eye can follow. Which is fast enough.
Last edited by kovidgoyal; 08-14-2013 at 04:55 AM.
|