Commit Graph

104 Commits (32dd451b6d01df833ba1eefb66940b129614ac9f)
 

Author SHA1 Message Date
Patrick Mylund Nielsen 32dd451b6d README.md: Be consistent with NewFrom()
Patrick Mylund Nielsen 238c0209c0 New markdown README (thanks Jason Mooberry)
Patrick Mylund Nielsen 46827c6a61 Add NoExpiration and DefaultExpiration constants and use them (thanks to Jason Mooberry)
Patrick Mylund Nielsen 73a30b2033 Add NewFrom, and deprecate Save, SaveFile, Load, and LoadFile
Patrick Mylund Nielsen ffd0b9e3ec Move the unexportedShardedCache to sharded.go
Patrick Mylund Nielsen 6ea7e6fb42 Remove the pointless unexportedInterface
Patrick Mylund Nielsen 23b49bf74d LICENSE: Remove sneaky space character
Patrick Mylund Nielsen 61ce35d44e LICENSE: Update copyright to 2012-2014
Patrick Mylund Nielsen 8c0eccfc44 CONTRIBUTORS: Add Jason Mooberry
Patrick Mylund Nielsen 7d1d6d6ae9 Note about needing explicit synchronization if you want to use the returned items map and its cache at the same time
Patrick Mylund Nielsen 3ff6a5407e Reference 'go doc' in the README
Patrick Mylund Nielsen c383ebd2ba Remove go doc-style reference from README since go doc now shows public methods from (private) embedded structs
Patrick Mylund Nielsen e91e36d111 ItemCount() is equivalent to len(c.Items()), not len(c.Items)
Patrick Mylund Nielsen fd89281dfd s/field/fields/
Patrick Mylund Nielsen f8cc27acbc Export Item wrapping type, and add an Items() method to cache
Patrick Mylund Nielsen baa5a64da4 Revert 3986bff for now
Patrick Mylund Nielsen 2fb27e8369 Change the names of the MutexMap benchmarks to RWMutex to clarify the changes to the map benchmarks and the cache itself
Patrick Mylund Nielsen 155ab21e5d Use an RWMutex in the cache-equivalent map tests now that the cache uses one
Patrick Mylund Nielsen 3986bff69b Don't keep the read lock after traversing the items map (before saving to the io.Writer) in Save
Patrick Mylund Nielsen 5388b25b3b Use an RWMutex instead of a Mutex, making Get a read operation only (this slightly changes the eviction behavior: lookup doesn't completely expunge an expired item, but the janitor still will at the next cleanup.) Also, use the same RWMutex in Load and Save (thanks, Alan Shreve)
Patrick Mylund Nielsen 1fc39f1402 Add ItemCount method description to README reference
Patrick Mylund Nielsen 1140511315 Condense the reference in the README by removing the duplicate descriptions and providing one general one for all of them
Patrick Mylund Nielsen 739fb494dc Update LICENSE file to 2012-2013
Patrick Mylund Nielsen c9f5754801 Add O(1) ItemCount method to retrieve items currently in the cache map (whether expired and not cleaned up or not)
Patrick Mylund Nielsen d5d03c28d4 Add specialized increment and decrement methods
Patrick Mylund Nielsen b5601e904d Clarify licensing on contributed code
Patrick Mylund Nielsen 525c0ccc26 Add CONTRIBUTORS file and 'and the go-cache contributors' bit to the copyright line in LICENSE
Patrick Mylund Nielsen e30c8eff7a Merge pull request from temoto/patch-1
Attempt to close the file in SaveFile/LoadFile, and return either the serialization error, or the Close() error.
Sergey Shepelev a768a84319 Save/LoadFile must close file
Patrick Mylund Nielsen 72916cf4df Update README to reflect API change: IncrementFloat now only works on float32 and float64, and the use of Decrement should be encouraged over Increment (with a negative number) since Increment converting a negative signed integer to an unsigned integer probably isn't the intended behavior
Patrick Mylund Nielsen b3a957a46c Handle float64 and int64 Increment/Decrement separately, and don't use Increment(-n) in Decrement to support uints
Patrick Mylund Nielsen 9cc10f6f2f Use a type switch instead, and Use unexported NewSharded in test
Patrick Mylund Nielsen 13225a8ae4 Unexport the shardedcache interface and implementation until both the API and implementation are solid
Patrick Mylund Nielsen 15cda21ff4 Add an interface, embed the mutex, and unexport some unnecessarily exported fields
Patrick Mylund Nielsen bf97a87cc7 Cleaner bucket selection
Patrick Mylund Nielsen 52c269d8ae Testing a sharded cache. Could be useful for massively parallel applications
Patrick Mylund Nielsen 0f0584a805 Fix BenchmarkCacheSetDeleteSingleLock 'cheating' by unintentionally only locking once in the whole benchmark, rather than once per set and delete
Patrick Mylund Nielsen 0a962bf9eb Keep the same tense in docstrings, and remove a little ambiguity
Patrick Mylund Nielsen 8f6294df58 Remove unused Version const
Patrick Mylund Nielsen 2b93e5eceb Stay below 80 characters in width in the README as well
Patrick Mylund Nielsen 026efae39f Stay below 80 chars in width
Patrick Mylund Nielsen 724bd0e963 Move comment explaining the manual mutex unlocking down to the first place where we actually do it
Patrick Mylund Nielsen aa7f52c169 Be clearer about the defaults, <80 width for the janitor comment, and remove 'default cleanup interval' -- there can be only one
Patrick Mylund Nielsen 8495026156 c can be collected. It isn't necessarily (right after)
Patrick Mylund Nielsen 23661b37bd Point out why using go-cache might be desirable
Patrick Mylund Nielsen 803ceeaf1a Use runtime.numCPU() workers in concurrent benchmarks, remove pointless benchmarks for racy maps, and add replacement benchmarks using mutexed maps
Patrick Mylund Nielsen 3bd539b94d Merge pull request from dustin/master
Limit BenchmarkCacheGetConcurrent goroutine count
Dustin Sallings fbcdb10061 Don't overparallelize the concurrent test.
Patrick Mylund Nielsen 3c46230312 use an integer example for the second to make it more obvious that the cache stores anything, not just strings
Patrick Mylund Nielsen c1bb5e2a35 The .gitignore file is no longer necessary