java线程 Java实现线程同步的几种方式?
Java实现线程同步的几种方式?
(1)同步方法:通过synchronized关键字修改的方法。因为Java中的每个对象都有一个内置锁,所以当用这个关键字修改一个方法时,这个内置锁将保护整个方法。在调用此方法之前,需要获取内置锁,否则会被阻止。(2) synchronized代码块是用synchronized关键字修饰的语句块。由该关键字修改的语句块将自动锁定以实现同步。(3) 线程同步是通过使用特殊的域变量volatile来实现的。volatile关键字提供了访问域变量的无锁机制。B.使用volatile修改域相当于告诉虚拟机该域可能被其他线程更新。因此,每次使用域时,都需要重新计算,而不是使用值D。寄存器中的volatile不提供任何原子操作,也不能用于修改final类型的变量。(4) 利用可重入锁实现线程同步,在JavaSE5.0中增加了一种新的方法java.util.concurrent文件包以支持同步。reentrantlock类是一个可以重新输入、互斥并实现锁接口的锁。它具有与同步方法和fast相同的基本行为和语义,并扩展了它的能力。(5) 利用局部变量实现线程同步
java线程 线程同步的四种方式 java线程同步有几种方法
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。