javaSE基础编程——线程同步
2015-09-04 18:27
453 查看
编写程序模拟3个老师分发80份试卷,每个老师分发试卷为一个线程
package com.cissst.software.thread;
public class GivePaper implements Runnable {
private int paper = 80;
Object lock = new Object();
@Override
public void run() {
// TODO Auto-generated method stub
while(paper>0){
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
synchronized(lock){
if(paper>0){
System.out.println(Thread.currentThread().getName()
+"正在发第"+paper+"张试卷");
//发完一张减一张
paper--;
}
}
}
}
}
package com.cissst.software.thread;
public class MainThread {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
GivePaper givepaper = new GivePaper();
new Thread(givepaper,"第一个老师").start();
new Thread(givepaper,"第二个老师").start();
new Thread(givepaper,"第三个老师").start();
}
}
相关文章推荐
- java.util.Date、java.sql.Date、java.sql.Time、java.sql.Timestamp区别和总结
- JAVA里面的IO流(二)方法1、输入流
- javaSE基础编程——自定义线程同步
- eclipse android经验
- JAVA设计模式——单例设计模式
- javaSE基础编程——自定义线程
- Java并发编程(Callable、Future和CompletionService)
- CCF-相邻数对-201409-1
- CCF-门禁系统-201412-1
- java设计模式-模版方法
- javaSE基础编程——序列化和反序列化操作(继承Serializable接口)
- java的多线程学习(一)
- Java泛型程序设计知识梳理
- JAVA基础学习(四)---数组的操作
- javaSE基础编程——多线程(生产者和消费者)
- Java类的多态机制
- Java_jdbc 基础笔记之一 数据库连接
- JAVA建立泛型数组
- Maven下的SpringMVC4.2+hibernate4.3整合
- 有关eclipse的快捷键