在一个类方法中,我一直在使用@synchronized带有信号量的块self.
+(void)someFunction {
@synchronized(self) {
/* some code */
}
}
Run Code Online (Sandbox Code Playgroud)
它似乎是有效的代码,至少编译器不会给我任何不好的反馈.我的问题是:self这里有什么?据我所知,该@synchronized块无效,但它也没有崩溃.
我只是好奇地问.
从iOS 5.1开始,我在EXC_BAD_ACCESS(code=2)实例化NSDateFormatter对象时遇到错误.
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; // bad_access
[dateFormatter setDateFormat:@"dd.MM.yyyy"];
Run Code Online (Sandbox Code Playgroud)

有没有人经历类似的事情,甚至可能有解决方案?它让我疯了!我正在为我的项目使用ARC.
编辑:
甚至NSDateFormatter* dateFormatter = [NSDateFormatter new];给我同样的错误.