本文介绍了objective-c:@synchronized,它是如何工作的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有两种方法
-(void) a {
@synchronized(self) {
// critical section 1
}
}
-(void) b {
@synchronized(self) {
// critical section 2
}
}
现在我的问题是线程是否处于关键部分1将关键部分2锁定为其他线程或其他线程可以访问关键部分2.
now my question is if a thread is in critical section 1. will the critical section 2 be locked for other threads or other threads can access critical section 2.
推荐答案
关键部分2将是也被阻止到其他线程,因为你正在同一个对象上同步( self
)。
Critical section 2 will be blocked to other threads, as well, since you're synchronizing on the same object (self
).
这篇关于objective-c:@synchronized,它是如何工作的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!