Method Cache Revisited #
hacking, June 29th 2007
I posted about my work on a thread-safe method cache in SBCL some time ago.
The code is in now in the wild as part of SBCL 1.0.7, but not exactly as described in the earlier entry. I'll provide a better writeup later, and just note the major differences here:
- Instead of back-to-front inserts everything works front-to-back, using compare-and-swap for all key writes. This, among other things, eliminates the possibility of having to busy-wait.
- A sentinel value is used for marking empty (and deleted) entries instead of NIL.