Remove MemoryStore$Entry.dropPending, unused as of 42e0a68082.
Set currentMemory to 0 in clear().
Remove unnecessary entries.get() call.
Synchronize on "entries" the remaining update to "currentMemory".
Make "currentMemory" @volatile, so that it's reads in ensureFreeSpace() are atomic and up-to-date--i.e., currentMemory can't increase while putLock is held (though it could decrease, which would only help ensureFreeSpace()).
Smarter take/limit implementation.
Merge pull request #9 from rxin/limit

Smarter take/limit implementation.
Merge pull request #7 from wannabeast/memorystore-fixes

some minor fixes to MemoryStore

This is a repeat of #5, moved to its own branch in my repo.

This makes all updates to   on ; it skips on synchronizing the reads where it can get away with it.