编写 三个类 ticket,sealWindow,ticketSealCenter,代表票信息,售票窗口,售票中心, 售票中心分配一定数量的票(多个窗口实现多线程售票)
2016-04-12 22:58
555 查看
package com.heima.test; public class Test18 { /**编写 三个类 ticket,sealWindow,ticketSealCenter,代表票信息,售票窗口,售票中心, 售票中心分配一定数量的票(多个窗口实现多线程售票) * @param args */ public static void main(String[] args) { window w = new window(); new Thread(w,"一号窗口").start(); new Thread(w,"二号窗口").start(); new Thread(w,"三号窗口").start(); new Thread(w,"四号窗口").start(); new Thread(w,"五号窗口").start(); } } class window implements Runnable{ @Override public void run() { while(true){ synchronized (window.class) { if(ticket.getTic()){ try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println(Thread.currentThread().getName()+ "卖出了第"+ticket.getTicket()+"号票!"); }else{ System.out.println("票卖完了!"); break; } } } } } class ticket{ private static int tic = 100; public static int getTicket() { return tic--; } public static void setTic(int tic) { ticket.tic = tic; } public static boolean getTic(){ if(tic > 0){ return true; }else{ return false; } } }
相关文章推荐
- 理解 Linux 网络栈(1):Linux 网络协议栈简单总结
- Android自动化测试之Monkeyrunner使用方法及实例
- 【每周一文】Field-aware Factorization Machine(2014)
- android去除标题栏
- POJ-1256 next_permutation函数应用
- Android Studio导入第三方jar包
- 策略模式的孪生兄弟——对状态模式的深度复习总结
- oracle压缩表空间
- CSUST 第九届校赛H-最小差值
- 京东2016实习题目-选举游戏-小东和其他小朋友正在玩一个关于选举的游戏。选举是通过投票的方式进行的,得票最多的人将获胜。
- vs2010 出错:error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
- web servers
- 数组冒泡排序
- 文件递归改后缀
- CollapsingToolbarLayout的使用
- 【每周一文】Ad Click Prediction: a View from the Trenches(2013)
- 自动轮播图(可以有点击事件的其中点击事件用 block 传值)
- 结构化开发方法和面向对象开发方法
- Hibernate单向一对多关联
- 文件夹按层级打印