What exactly does “Implementations Should Not Block” in this context mean?
In your case, you cannot perform disk I / O.
This is the cache of the first level (L1), that is, it is intended to return within microseconds, not milliseconds or seconds. That's why they protect LruCache , which is the memory cache.
Is there an example of a non-blocking file cache (even non-android, but "clean" java) that I can use to educate myself on how to convert my existing file cache to non-blocking?
L1 cache should not be a file cache.
what could be the negative consequences of using my existing implementation, which is (just reading from a file)
L1 cache should not be a file cache.
Volley already has an integrated L2 cache file called DiskBasedCache , used to cache HTTP responses. You can replace your own Cache implementation with DiskBasedCache if you want, and provide it when creating the RequestQueue .
source share