Управление памятью статических констант в Objective-C
Я смотрел видео F8-2016 Building iOS Tooling на Facebook Scale, когда заметил интересную часть кода в 7:01.
Facebook определил статическую константу в Objective-C следующим образом:
static __unsafe_unretained NSString * const kAuthorKey = @"AUTHOR";
До сих пор я объявлял свои статические константы таким же образом, но без __unsafe_unretained
, Без этого модификатора константа будет strong
, но так как он существует всегда во время запуска приложения, не имеет значения, если это strong
или же __unsafe_unretained
,
Я что-то пропустил? У Facebook есть какие-либо причины для использования __unsafe_unretained
?