Почему __unsafe_unretained может прервать цикл сохранения в блоке в MRC? - PullRequest
0 голосов
/ 27 ноября 2018

Поскольку __unsafe_unretained и __weak могут прервать цикл сохранения в кадре в ARC, я пытаюсь использовать __unsafe_unretained в MRC, и в результате получается YES.Так в чем же абсолютная причина этого?

Я знаю, __block может разорвать цикл сохранения блока с регистром BLOCK_BYREF_CALLER | BLOCK_FIELD_IS_OBJECT в MRC.Но __unsafe_unretained - это случай BLOCK_FIELD_IS_OBJECT, такой же, без __unsafe_unretained, и он сохранит NSObject в MRC.

Так что я не знаю почему.

Пожалуйста, смотрите libclosure-67

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...