NSDateFormatterインスタンス作成が UITableViewCellのレンダリングを遅くする一因になるので作ったらしい。
こんな感じで使う。
NSDate *date = ...; cell.detailTextLabel.text = [[CZDateFormatterCache mainQueueCache] localizedStringFromDate:date dateStyle:kCFDateFormatterShortStyle timeStyle:kCFDateFormatterShortStyle];
ソースを見るとiOSのカレントロケールの変更(NSCurrentLocaleDidChangeNotification)を見てキャッシュに反映するなど、気の利いた実装になっていた。
なお NSDateFormatterのインスタンスは非スレッドセーフなので、このキャッシュを使う場合もメインスレッドから使う。
ライセンス: Apache 2.0 license