I'm not sure this is the best way to do it, but when you create your Runnable to go a gradually load images from the network, you can pass it an empty Map (or something similar). The class that's kicking off your runnable should keep a reference to the Map, and make it available to whatever other threads might want to get images.
Then, you can use the
String path to the image as the key to see if an image is loaded into your Map cache before you try to go get it on the network independently.
Is that what you're looking for?