我的应用程序进行了大量的日历计算,因此我需要为其中的大多数功能设置一个NSCalendar。现在调用[ NSCalendar currentCalendar ]似乎非常慢,因为其他人也评论说,所以我想我可以简单地缓存NSCalendar的副本。然而,如果我在需要的时候创建了一个新的NSCalendar,那么这个NSCalendar似乎会时不时地产生一些垃圾。我假设它不是被释放了就是以某种方式被破坏了,这让我很惊讶,因为我正在使用“自动引用计数”。
有什么建议吗。
PS这可能是因为NSCalendar不是线程安全的吗?
PSS
我最终从主线程设置了我的CurrentCalendar。这似乎解决了问题。如果任何人对此有任何意见,请让我知道。
R
发布于 2012-11-21 22:49:42
作为调查步骤,我建议您记录对象的类,看看它是否以某种方式更改为另一个对象。例如,如果你有这样的代码:
NSCalendar *cal = [NSCalendar currentCalendar];NSLog(@"Calendar class: %@", [cal class]);当一切正常时,您应该返回一个__NSCFCalendar。
https://stackoverflow.com/questions/13494988
复制相似问题