Swiftyのお風呂メモ
re: Kazuho at Work: Swifty-0.02 and Perl Binding
- 書き込み時flockは、書き込み中にプロセスが死んだ場合に検知するため
- userland mutex も選択できるようにするといいかも (wait(2) で検知とかもできるし)
- データ書き込み後、atomic に commit されるまで、変更は reader から見えない
- なので書き込み中 reader をブロックすることはない
- dirty ビットが立っているファイルは修復される (でもレアケースだからクリアでいいかも)
- リーダーがexpire検出して、データブロックのパージを行うケースで競合検出が抜けていたorz
- メモリ不足の際のpurgeがダサすぎる
- set associativeにする際に、同一set内のexpirationを確認するようにすればいいかな
- 全体に継ぎ足し感の漂うコードだけど、再設計をしたとしてどんだけキレイ/高速になるのかが見えない