Я не знаю, когда мне нужно скопировать блок.
В документации написано when you expect the block to be used after destruction of the scope within which it was declared
.
Нужно ли мне копировать его, когда я использую их, например, в качестве методов обратного вызова? Под копией я подразумеваю создание свойства копии для моего блока и сохранение его там или каким-либо образом отправка сообщения копирования. Область видимости может быть уничтожена после завершения загрузки или чего-то подобного. Так что мне нужно скопировать блок в этом случае? Могу ли я создать круговые ссылки таким образом?
Прямо сейчас у меня есть класс загрузчика (только для тестирования блоков, для меня это слишком опасно), который использует блок завершения, и когда я копирую блок, контроллер представления, который создал блок, и класс загрузчика не вышел.
Можете ли вы привести несколько хороших примеров, особенно их использование для завершения асинхронных операций, таких как загрузка файлов?
Спасибо.