导航:首页 > 编程语言 > 线程javalock

线程javalock

发布时间:2024-11-28 14:31:42

java如何实现线程安全,synchronized和lock的区别,可重入锁

一、synchronized和lock的用法区别


synchronized:在需要同步的对象中加入此控制,synchronized在方法上,也在特定代码块中,括号中表示需要锁的对象。


lock:需要显示指定起始位置和终止位置。一般使用ReentrantLock类做为锁,多个线程中必须要使用一个ReentrantLock类做为对象才能保证锁的生效。且在加锁和解锁处需要通过lock()和unlock()显示指出。所以一般会在finally块中写unlock()以防死锁。


二、synchronized和lock用途区别


synchronized原语和ReentrantLock在一般情况下没有什么区别,但是在非常复杂的同步应用中,请考虑使用ReentrantLock,特别是遇到下面2种需求的时候。


  1. 某个线程在等待一个锁的控制权的这段时间需要中断

  2. 2.需要分开处理一些wait-notify,ReentrantLock里面的Condition应用,能够控制notify哪个线程

  3. 3.具有公平锁功能,每个到来的线程都将排队等候

阅读全文

与线程javalock相关的资料

热点内容
红色的鱼是什么app 浏览:681
程序员的生涯经历 浏览:433
纳粹命令 浏览:586
什么讲鬼故事app 浏览:967
程序员级升 浏览:87
怎样关闭照片加密 浏览:522
文件夹变拉链 浏览:607
服务器未在运行什么意思 浏览:407
单片机应用大赛 浏览:464
博格上海压缩机有限公司 浏览:27
招行车贷解压有费用吗 浏览:702
总统命令小说 浏览:818
安卓手机为什么卡成狗 浏览:384
广州市公司软件加密 浏览:230
灯光设计手册pdf 浏览:769
java虚线 浏览:428
androidio流 浏览:799
服务器怎么改nvr 浏览:939
真空压缩袋怎样打开 浏览:82
证券市场基础知识pdf2012 浏览:722