Simplify code by using copy-on-write for the immutable time zone cache dictionary instead of a slower thread local variant.
This references #12 and runs about 15% faster in my quick test. It's also a lot less code and especially no longer needs an initializer to create the cache.
Another way that might be not as fast but would require even less memory would be to simply use an NSCache object instead of the NSDictionary.
Simplify code by using copy-on-write for the immutable time zone cache dictionary instead of a slower thread local variant.
This references #12 and runs about 15% faster in my quick test. It's also a lot less code and especially no longer needs an initializer to create the cache.
Another way that might be not as fast but would require even less memory would be to simply use an NSCache object instead of the NSDictionary.