Commit Graph

173 Commits (709886bb454f7ee6059772232d1742cc46d2a51a)
 

Author SHA1 Message Date
Denis Palnitsky 709886bb45
Update module name and add example
Denis Palnitsky 2b9c5453ec
fix: workflow syntax
Denis Palnitsky 1aa02cc5c0
Install staticcheck manually
Denis Palnitsky f3743f7189
Staticcheck v 2022.1.1
Denis Palnitsky 14039dcb07
Staticcheck v1.2
Denis Palnitsky 75ec9fffb2
Fix: workflow syntax
Denis Palnitsky 7b82f62a13
Use staticcheck for linting
Denis Palnitsky 5d9563a701
use whitespace instead of tab
Denis Palnitsky 5f78355e1e
Github-action
Denis Palnitsky 48e09c1d06
Make Cache a generic
Patrick Mylund Nielsen 46f4078530 Fix incorrect key in concurrent benchmarks
Fixes 
Patrick Mylund Nielsen 8026b575a9 LICENSE: Update copyright years
Patrick Mylund Nielsen 5633e08626 LICENSE: Update years
Patrick Mylund Nielsen 9f6ff22cff Fix benchmark for-loop shadowing
Patrick Mylund Nielsen a3647f8e31 Merge pull request from inf-rno/master
Fix janitor stop channel data race
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
Patrick Mylund Nielsen 7ac151875f Merge pull request from alexedwards/master
Add GetWithExpiration
Patrick Mylund Nielsen ea4bd2a538 LICENSE: Update copyright years
Patrick Mylund Nielsen 96426d0c5b README.md: Remove the unprotected change example since it would actually need external synchronization
Patrick Mylund Nielsen dd1ed0ba63 README.md: Remove one level of indentation and increase 'recommended' cleanupInterval
Alex Edwards 8c11fe2df0 Add GetWithExpiration
Patrick Mylund Nielsen e7a9def80f Add SetDefault() for setting with the default expiration
Patrick Mylund Nielsen 52581776a3 LICENSE: Update copyright year
Patrick Mylund Nielsen 9e6d9117e7 Add 'inlining of expired' note to Items()
Patrick Mylund Nielsen a2d8b56f0c Make Items() return a copy rather than an unsynchronized reference to the underlying items map
Patrick Mylund Nielsen 1881a9bccb Merge pull request from darrenmcc/master
added go syntax highlighting to README
Darren McCleary da6326cd69 added go syntax highlighting to README
Patrick Mylund Nielsen 5849ccb308 remove mu.RUnlock call from get
Patrick Mylund Nielsen 721cc9438c Add BenchmarkRWMutexInterfaceMapGetString
Patrick Mylund Nielsen 8c41258ef3 Add BenchmarkRWMutexInterfaceMapGet
Patrick Mylund Nielsen faf83836bd Change GitHub repository URLs in README
Patrick Mylund Nielsen 66bf7b7a45 Update README to point to new repository URL
Patrick Mylund Nielsen d461c5d2dd 'Inline' set in Set, and do time checks before the lock
Patrick Mylund Nielsen 76f1250a65 Make OnEvicted() a little faster
Patrick Mylund Nielsen 7c1e7f5829 go fmt
Patrick Mylund Nielsen 9fc6f9c73f Add expiring/notexpiring sharded cache benchmarks
Patrick Mylund Nielsen afadf13f9f Back to UnixNano(), syscall dependency isn't worth a few nanoseconds better performance
Patrick Mylund Nielsen f6cdd07cbb Merge branch 'timeval'
Patrick Mylund Nielsen 2f0c74ebb8 Use intermediary timevals
Patrick Mylund Nielsen 2f60853f80 No need for emptyTime anymore
Patrick Mylund Nielsen 01842a547c Use timevals
Patrick Mylund Nielsen 1924ec3baf Remove expired() since it's no longer used (because of the inlining)
Patrick Mylund Nielsen 8084bd02b5 Inline expiration checks manually for performance
Patrick Mylund Nielsen eb4f9f6b2f Use UnixNano int64s instead of Time
Patrick Mylund Nielsen 31c7be0bed 'Inline' Get and Expired
Patrick Mylund Nielsen 4e0d34ef00 Only get the current time once in the DeleteExpired loop
Patrick Mylund Nielsen a45ed98559 Add benchmarks that use expiring items (time.Now calls) and rename BenchmarkDeleteExpired to BenchmarkDeleteExpiredLoop for clarity
Patrick Mylund Nielsen 28ab885a1a Make BenchmarkDeleteExpired more meaningful
Patrick Mylund Nielsen cf4e165754 Add IncrementInt benchmark
Patrick Mylund Nielsen 901b2413ee Improve cache locality by removing Item-related pointers