java多线程:8、初用Lock
来源:互联网 发布:亚洲蹲 知乎 编辑:程序博客网 时间:2024/06/10 18:56
Lock比传统线程模型中的synchronized方式更加面向对象,与生活中的锁类似,锁本身也是应该是一个对象。两个线程执行的代码片段要实现同步互斥的效果,他们必须使用的是用一个Lock对象。锁是上在代表要操作的资源的类的内部方法中,而不是线程代码中。
import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.ScheduledExecutorService;import java.util.concurrent.TimeUnit;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/** *Lock */public class ThreadTest2 { public static void main(String[] args) { Outer out=new Outer(); new Thread(new Runnable() { @Override public void run() { // TODO Auto-generated method stub while(true){ try { Thread.sleep(50); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } out.syso("#####"); } } }).start(); new Thread(new Runnable() { @Override public void run() { // TODO Auto-generated method stub while(true){ try { Thread.sleep(50); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } out.syso("!!!!"); } } }).start(); } static class Outer{ Lock lock=new ReentrantLock(); public void syso(String name){ lock.lock(); try{ for(int i=0,n=name.length();i<n;i++){ System.out.print(name.charAt(i)); } System.out.println(); }finally{ lock.unlock(); } } }}
0 0
- java多线程:8、初用Lock
- Java多线程---Lock类
- java多线程-Lock
- Java 多线程:Lock 关键字
- Java 多线程:Lock接口
- Java 多线程:Lock 关键字
- Java多线程--Lock接口
- Java多线程4- Lock、Condition
- Java多线程4- Lock、Condition
- Lock的使用 java多线程
- Java 锁LOCK&多线程安全
- JAVA Lock 多线程顺序执行
- Java多线程--Lock的使用
- java多线程Lock的使用。
- Java 多线程之Lock接口
- Java多线程(四)Lock锁
- java多线程之Lock介绍
- java多线程学习8-显示锁Lock和ReentrantLock
- 算法竞赛入门经典笔记2
- 自由的小方(android重力传感器DEMO)
- Xcode中StoryBoard Reference 新特性的使用
- SpingMVC -@InitBinder与日期的格式化
- 循环队列的实现
- java多线程:8、初用Lock
- 关于集合中对象如何进行排序
- R-FCN网络
- 使用servletContext读取资源文件
- WebRTC protocols
- 教你上传本地代码到github
- 文件描述符和dup dup2 fcntl
- 《深入理解JAVA虚拟机》第三章
- Meta http-equiv属性的使用