导航:首页 > 编程语言 > 线程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相关的资料

热点内容
编程字母代表什么 浏览:952
rainmc服务器地址 浏览:456
电信校园网客户端认证服务器地址 浏览:448
掌阅怎么看文件夹 浏览:341
在伴伴app里面怎么拜师傅 浏览:942
编程珠玑笔记 浏览:281
结束命令行 浏览:269
力学原理pdf 浏览:736
宏定义编译后不变 浏览:404
如何搞免费服务器 浏览:212
神经系统pdf 浏览:672
如何查看服务器上的数据库服务器 浏览:195
压缩机型号v代表什么 浏览:58
旅游类源码 浏览:867
电脑服务器类型怎么设置 浏览:235
pdf炒股 浏览:791
服务器地址缺少端口号什么意思 浏览:535
下载需要解压的小说用哪个软件 浏览:539
广东分布式服务器云主机 浏览:588
服务器忙打不开怎么办 浏览:20