main thread blocks when image is not in cache yet