在声明属性的时候,经常会用到nonatomic,如果没有用这个关键字的话,那么在程序自动创建“设值方法”和“读值方法”的时候,就会把self作为一个mutex,从而保证了原子性:

@synchronized(self){

……

}

  它把代码包含在了@synchronize中,并以self作为mutex。这就意味着这段代码在执行的过程中,其他以self作为mutex的代码就无法执行了,这样保证了数据的完整性。如果程序中只有一个main thread,那么就可以把所有的成员变量都声明为nonatomic。对于UI控件来说,最好也加上nonatomic,因为他们也基本只会在主线程中更新。

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-05-23
  • 2021-05-19
  • 2022-02-13
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-01-09
  • 2021-05-14
  • 2021-05-12
  • 2021-10-31
  • 2022-01-01
相关资源
相似解决方案