iOS开发block是用copy修饰还是strong
2022-07-18 本文已影响0人
心成则玲
Block分为全局Block、堆Block和栈Block
1、在定义block没有引用外部变量的时候,block为全局的(ARC和MRC)都是这样
2、定义block有引用到外部变量的时候,在MRC的情况下block属于栈上,容易被释放,使用的时候要copy一下,把栈上得block拷贝到堆上,在ARC的情况下,系统会自动把栈上得block拷贝到堆上,所以使用不需要copy。
3、在ARC下,使用copy与strong其实都一样,推荐使用copy。