Vivian Mathews
0640633ccc
Fix race condition
...
- the gc finalize for an object races with the janitor.Run goroutine
- because the janitor.stop channel is created in the Run() goroutine this leads
to a data race.
- fix by creating the channel when the janitor is created
7 years ago
Patrick Mylund Nielsen
7ac151875f
Merge pull request #46 from alexedwards/master
...
Add GetWithExpiration
8 years ago
Patrick Mylund Nielsen
ea4bd2a538
LICENSE: Update copyright years
8 years ago
Patrick Mylund Nielsen
96426d0c5b
README.md: Remove the unprotected change example since it would actually need external synchronization
8 years ago
Patrick Mylund Nielsen
dd1ed0ba63
README.md: Remove one level of indentation and increase 'recommended' cleanupInterval
8 years ago
Alex Edwards
8c11fe2df0
Add GetWithExpiration
8 years ago
Patrick Mylund Nielsen
e7a9def80f
Add SetDefault() for setting with the default expiration
8 years ago
Patrick Mylund Nielsen
52581776a3
LICENSE: Update copyright year
8 years ago
Patrick Mylund Nielsen
9e6d9117e7
Add 'inlining of expired' note to Items()
8 years ago
Patrick Mylund Nielsen
a2d8b56f0c
Make Items() return a copy rather than an unsynchronized reference to the underlying items map
8 years ago
Patrick Mylund Nielsen
1881a9bccb
Merge pull request #29 from darrenmcc/master
...
added go syntax highlighting to README
9 years ago
Darren McCleary
da6326cd69
added go syntax highlighting to README
9 years ago
Patrick Mylund Nielsen
5849ccb308
remove mu.RUnlock call from get
9 years ago
Patrick Mylund Nielsen
721cc9438c
Add BenchmarkRWMutexInterfaceMapGetString
9 years ago
Patrick Mylund Nielsen
8c41258ef3
Add BenchmarkRWMutexInterfaceMapGet
9 years ago
Patrick Mylund Nielsen
faf83836bd
Change GitHub repository URLs in README
9 years ago
Patrick Mylund Nielsen
66bf7b7a45
Update README to point to new repository URL
9 years ago
Patrick Mylund Nielsen
d461c5d2dd
'Inline' set in Set, and do time checks before the lock
9 years ago
Patrick Mylund Nielsen
76f1250a65
Make OnEvicted() a little faster
9 years ago
Patrick Mylund Nielsen
7c1e7f5829
go fmt
9 years ago
Patrick Mylund Nielsen
9fc6f9c73f
Add expiring/notexpiring sharded cache benchmarks
9 years ago
Patrick Mylund Nielsen
afadf13f9f
Back to UnixNano(), syscall dependency isn't worth a few nanoseconds better performance
9 years ago
Patrick Mylund Nielsen
f6cdd07cbb
Merge branch 'timeval'
9 years ago
Patrick Mylund Nielsen
2f0c74ebb8
Use intermediary timevals
9 years ago
Patrick Mylund Nielsen
2f60853f80
No need for emptyTime anymore
9 years ago
Patrick Mylund Nielsen
01842a547c
Use timevals
9 years ago
Patrick Mylund Nielsen
1924ec3baf
Remove expired() since it's no longer used (because of the inlining)
9 years ago
Patrick Mylund Nielsen
8084bd02b5
Inline expiration checks manually for performance
9 years ago
Patrick Mylund Nielsen
eb4f9f6b2f
Use UnixNano int64s instead of Time
9 years ago
Patrick Mylund Nielsen
31c7be0bed
'Inline' Get and Expired
9 years ago
Patrick Mylund Nielsen
4e0d34ef00
Only get the current time once in the DeleteExpired loop
9 years ago
Patrick Mylund Nielsen
a45ed98559
Add benchmarks that use expiring items (time.Now calls) and rename BenchmarkDeleteExpired to BenchmarkDeleteExpiredLoop for clarity
9 years ago
Patrick Mylund Nielsen
28ab885a1a
Make BenchmarkDeleteExpired more meaningful
9 years ago
Patrick Mylund Nielsen
cf4e165754
Add IncrementInt benchmark
9 years ago
Patrick Mylund Nielsen
901b2413ee
Improve cache locality by removing Item-related pointers
9 years ago
Patrick Mylund Nielsen
3d4d09ca0b
Add a benchmark for DeleteExpired()
9 years ago
Patrick Mylund Nielsen
0ba3e0049c
Update copyright years
9 years ago
Patrick Mylund Nielsen
ac0fcef49b
Clarify that the OnEvicted function isn't called when an item is overwritten
9 years ago
Patrick Mylund Nielsen
e9441b12e0
Add mutex-using test condition to TestOnEvicted
9 years ago
Patrick Mylund Nielsen
3f2c810ea1
Add OnEvicted()
9 years ago
Patrick Mylund Nielsen
a0136a8980
Don't expose the cache mutex
9 years ago
Patrick Mylund Nielsen
a122e14c4b
Merge pull request #23 from databus23/patch-1
...
Fix leaking the janitor ticker when shutting down
9 years ago
Fabian Ruff
fe045e4040
Fix leaking the janitor ticker when shutting down
9 years ago
Patrick Mylund Nielsen
93d85800f2
README.md: Add missing 'time' import to example
10 years ago
Patrick Mylund Nielsen
03284ca422
Replace sharded hash function/misc mods
10 years ago
Patrick Mylund Nielsen
8a2f4f19ef
go fmt
10 years ago
Patrick Mylund Nielsen
e3a846e1f9
Clarify what NoExpiration and DefaultExpiration are
10 years ago
Patrick Mylund Nielsen
a1dd6b7fff
s/NewFrom/NewFrom()/ in NewFrom doc
10 years ago
Patrick Mylund Nielsen
9ea75a8586
s/NewFrom/NewFrom()/ in Load/LoadFile/Save/SaveFile docs
10 years ago
Patrick Mylund Nielsen
873e78f0db
s/gob.Register/gob.Register()/ in NewFrom doc
10 years ago