@synchronized的用法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了@synchronized的用法相关的知识,希望对你有一定的参考价值。

@synchronized 的作用是创建一个互斥锁,保证此时没有其它线程对self对象进行修改。这个是objective-c的一个锁定令牌,防止self对象在同一时间内被其它线程访问,起到线程的保护作用。 一般在公用变量的时候使用,如单例模式或者操作类的static变量中使用。
  大概就是如果线程A访问一对象时,线程B必须等线程A访问完毕后,线程B才能够去操作。@synchronized(id anObject)是最简单的方法,会自动对参数对象加锁,保证临界区内的代码线程安全。

以上是关于@synchronized的用法的主要内容,如果未能解决你的问题,请参考以下文章

深入研究 Java Synchronize 和 Lock 的区别与用法

初学Java多线程:使用Synchronized块同步方法

synchronized关键字以及对象锁和类锁的区别

006-线程同步解决ReentrantLock

Java中synchronized关键字理解

线程安全(重点)