Synchronized和Lock的用法和区别

一、Synchronized和Lock的用法和区别多线程 1.synchronized是托管给JVM执行的,而Lock是Java写的控制锁的代码。  2.synchronized原始采用的是CPU悲观锁机制,即线程得到的是独占锁。独占锁意味着其余线程只能依靠阻塞来等待线程释放锁。而在CPU转换线程阻塞时会引发线程上下文切换,当有不少线程竞争锁的时候,会引发CPU频繁的上下文切换致使效率很低。  
相关文章
相关标签/搜索