Возврат из метода в @synchronized блоке

Я был бы точно так же, как, чтобы знать, рекомендуют ли этому return из метода в a @synchronized блок? Например:

- (id)test {
   @synchronized(self) {
      if (a) return @"A";
      else return @"B";
   }
}

В противоположность:

- (id)test {
   NSString *value;
   @synchronized(self) {
      if (a) value = @"A";
      else value = @"B";
   }
   return value;
}

Этот образец довольно упрощен, но иногда в сложном методе он делал бы вещи более простыми смочь возвратиться из a @synchronized блок.

11
задан Lebyrt 9 May 2014 в 08:15
поделиться

1 ответ

Ничего страшного. @synchronized знает об операторе return .

(Ссылка: http://www.thaesofereode.info/clocFAQ/#sync-advs ) - неработающая ссылка
(Ссылка: http: // nextstep. sdf-eu.org/clocFAQ/#sync-advs) - эта ссылка указана выше мертвой и может быть устаревшей, как сказано в ее заголовке

11
ответ дан 3 December 2019 в 09:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: