People might call ``remove()`` from each thread to do this cleanup manually - and indeed in the future when I remove the stupid threading.local subclass magic that will be required.

Therefore can you throw a ``lock.acquire()`` and ``release()`` around the body of remove? Calling ``_remove`` more than once *sequentially* is safe, but having multiple threads globbing and removing files at the same time (or randomly interleaved thanks to the GIL) seems potentially dangerous or at least non-deterministic.