我在某处读取了使用多个相同同步块的代码,如下所示:
@implementation Test {
NSObject var;
}
- (void)method1 {
@synchronized(self) {
@synchronized(var) {
...
}
}
}
- (void)method2 {
@synchronized(self) {
@synchronized(var) {
...
}
}
}
以这种方式执行self和var嵌套同步的理由是什么?仅仅在变量上单独使用@synchronized吗?