lock prior to count+purge to prevent maxing out operation queue

..which would happen if several threads enter in rapid succession and
all determine the capacity is exceeded, waiting for a purge lock. This
is especially visible if the tiles are loaded from a slow endpoint.