使用Lock concurrent包当中ReentrantLock 可以实现synchronized 一样的效果
2017-05-25 17:19
549 查看
package com.suning.sdipos.web.test;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;public class LockTest { public static void main(String[] args) { final Outerputer1 output = new Outerputer1(); new Thread() { @Override
public void run() { output.output("zhangsan"); } }.start(); new Thread() { @Override public void run() { output.output("lisi"); } }.start(); } static class Outerputer1 { private final Lock lock = new ReentrantLock(); public void output(String name) { lock.lock();
try { for (int i = 0; i < name.length(); i++) { System.out.println(name.charAt(i)); } } finally { lock.unlock(); } } }}
public void run() { output.output("zhangsan"); } }.start(); new Thread() { @Override public void run() { output.output("lisi"); } }.start(); } static class Outerputer1 { private final Lock lock = new ReentrantLock(); public void output(String name) { lock.lock();
try { for (int i = 0; i < name.length(); i++) { System.out.println(name.charAt(i)); } } finally { lock.unlock(); } } }}
相关文章推荐
- 悲观锁和相比synchronized,ReentrantLock增加了一些高级功能,主要有以下3项:等待可 中断、可实现公平锁,以及锁可以绑定多个条件
- 使用 CSS3 可以实现的五种很酷很炫的效果
- 使用CSS3可以实现的五种很酷很炫的效果
- synchronized和ReentrantLock实现消费者生产者问题
- synchronized与ReentrantLock的介绍、使用、适合场景及比较
- AngularJS中,联合使用ng-repeat和ng-if,可以实现对数据删选显示效果,特别适合于用作表单数据的显示
- 使用 CSS3 可以实现的五种很酷很炫的效果
- Nodejs做RSA验证实例与豌豆荚RSA验证的实现,支付宝的RSA也一样可以使用,0.0
- Lock、ReentrantLock、synchronized、ReentrantReadWriteLock使用
- 使用TextView可以实现跑马灯效果
- 在网络7层协议中,如果想使用UDP协议达到TCP协议的效果,可以在哪层做文章?(QQ 为什么采用 UDP 协议,而不采用 TCP 协议实现?)
- 使用 CSS3 可以实现的五种很酷很炫的效果
- 网站顶部的固定淡出菜单 --- 可以实现新浪微博顶部导航菜单一样的效果
- java 使用ReentrantLock Condition实现阻塞队列
- 比较ReentrantLock和synchronized和信号量Semaphore实现的同步性能
- 使用CSS3可以实现的五种很酷很炫的效果
- 使用Lock实现互斥(synchronized的一个替代)
- 一个小型的网站,比如个人网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在一个目录下,这样的网站对系统架构、性能的要求都很简单,随着互联网业务的不断丰富,网站
- 使用synchronized实现一个Lock
- synchronized 与 ReentrantLock 同步代码块简单实现