The TTL is an idle timer TTL. Each entry resets to the TTL when accessed.
A cache with a five minute TTL will expire an entry when nothing touches it for five minutes.
The entry timer resets to the TTL every time an item is read. You need to dirty a key when
the result of M:F(Key) will change from what is in the cache.