舒心、快乐,比什么都重要

synchronized相关用法简述

synchronized 锁,他是一个java 的关键字,能够保证同一线程只有一个线程访问或使用此修饰的代码块

用法 synchronized方法,synchronized块

synchronized方法:public synchronized void accessVal(int newVal

synchronized块:

synchronized(syncObject) {  
  //允许访问控制的代码  
}  

总结:当一个syc锁被第一个拿到时,第一个拿到的享有优先使用权,其他使用这个syc锁的必须等待,即等待第一个拿到的使用完成。这是针对于同一个对象而言,如果是不同的对象,不同的对象会产生不同的锁实例,所以这个锁

只针对同一个对象。

同步类,一个类如果有加锁,但是如果类中并没有加锁的方法和加锁的方法块,外部如果有不同线程调用,那么其实对于这个加锁有没有并没有什么影响,因为都不是加锁的方法,他们仍可以正常执行。

 

//博客推荐,这个是博客园我感觉写的比较好的锁的介绍

https://www.cnblogs.com/GnagWang/archive/2011/02/27/1966606.html

 

posted @ 2018-01-22 12:38  Arcturis  阅读(311)  评论(0编辑  收藏  举报