解释看博客:http://blog.csdn.net/lxlzy/article/details/51252256
试想一种情况:block中的变量如果如果在block执行过程中却被其他线程释放了,那么会出现什么情况呢?这个局部变量调用其他方法就会无效。
因此,为了避免block中的变量在执行过程中就提前释放,可以使用__block对这些变量进行一次强引用。当block执行完毕后会对这些变量进行release操作。这样就达到了,block对该变量的保护作用。
解释看博客:http://blog.csdn.net/lxlzy/article/details/51252256
试想一种情况:block中的变量如果如果在block执行过程中却被其他线程释放了,那么会出现什么情况呢?这个局部变量调用其他方法就会无效。
因此,为了避免block中的变量在执行过程中就提前释放,可以使用__block对这些变量进行一次强引用。当block执行完毕后会对这些变量进行release操作。这样就达到了,block对该变量的保护作用。