Ответ 1
@synchronized
автоматически удалит свой контекст обработки исключений при возврате и освободит блокировку. Итак, код, который вы написали, в порядке.
Может кто-нибудь сказать мне, нормально ли вернуться изнутри блока @synchronized
?
Например:
- (id)methodThatReturnsSomething:(BOOL)bDoIt
{
@synchronized(self) {
if(!bDoIt) return nil;
...
}
}
или мне нужно сначала разблокировать блок (вместо этого использовать NSLock)?
@synchronized
автоматически удалит свой контекст обработки исключений при возврате и освободит блокировку. Итак, код, который вы написали, в порядке.