Что вам не хватает, так это то, что если блок, в который вы передаете, находится в стеке, то copy
будет делать именно то, что написано в имени, - это создаст копию блока надв кучу.Поэтому вы не ожидаете никаких изменений в поведении того, с кем вы прошли;никто новый не сохраняет его.Копия останется в живых, пока оригинал будет освобожден.
(за исключением: если вы не используете ARC, вы также захотите автоматически выпустить копию; вы должны передать не владеющую ссылку как userInfo:
. В противном случае копия никогда не будет освобождена)