多线程之线程的安全问题

 

  线程在执行过程中,通过cpu的调度,执行轨迹不确定,对共享资源的访问很容易造成数据的错误。我们称这个错乱称为线程安全问题。

  

  同步概念  

  原子性操作:一个操作要么一次性做完,要么根本不开始,不存在中间状态。

  同步就是让操作保持原子性,java提供了两种方式实现同步。即同步代码块和同步方法。

  

  

  同步代码块

  把需要同步的操作放到同步代码块中:

	@Override
	public void run() {
		synchronized(mutex){
			
		}
	}  

  mutex 称为互斥锁/同步锁。对共享资源进行加锁实现同步。一般用共享资源作为同步锁,也称同步监视器。

  同步方法

猜你喜欢

转载自www.cnblogs.com/luojack/p/10846760.html