完成火车站售票程序的模拟。

要求:

(1)总票数1000张;

(2)10个窗口同时开始卖票;

(3)卖票过程延时1秒钟;

(4)不能出现一票多卖或卖出负数号票的情况。

一:实验代码

package demo;

public class MyThread implements Runnable {
private int ticket=25;
public void run() {
for(int i=0;i<25;i++) {
synchronized(this) {
if(ticket>0) {
try {
Thread.sleep(1000);
}catch(Exception e) {
e.printStackTrace();
}
System.out.println(Thread.currentThread().getName()+"运行,ticket="+ticket--);
}
}
}
}
};
package demo;

public class test {

	public static void main(String[] args) {
MyThread mt=new MyThread();
Thread t1=new Thread(mt,"A窗口");
Thread t2=new Thread(mt,"B窗口");
Thread t3=new Thread(mt,"C窗口");
Thread t4=new Thread(mt,"D窗口");
Thread t5=new Thread(mt,"E窗口");
Thread t6=new Thread(mt,"F窗口");
Thread t7=new Thread(mt,"H窗口");
Thread t8=new Thread(mt,"I窗口");
Thread t9=new Thread(mt,"J窗口");
Thread t0=new Thread(mt,"K窗口");
t1.start();
t2.start();
t3.start();
t4.start();
t5.start();
t6.start();
t7.start();
t8.start();
t9.start();
t0.start();
}
}

二:运行截图





对于本题还是可以很好地了解runnable接口的用途,对于解决资源共享同步操作实现同步代码块与同步方法的处理。

本周总结

(1)对于多线程取得和设置线程名称,线程的是否启动,线程的强制运行,线程的休眠,线程的礼让问题。

(2)对于java IO操作文件类——File的介绍与对File类主要方法与构造类的了解





走着走着,就到了,这就对了

最新文章

  1. 独立开发 一个社交 APP 的架构分享 (已实现)
  2. LINQ的All的方法
  3. java 27 - 3 反射之 通过反射获取构造方法并使用
  4. spinner下拉框组件
  5. Python基础学习笔记FromImooc.com
  6. ubuntu 64位android项目报错的解决方案,打开64位 Ubuntu 的32位支持功能
  7. asp数组的使用
  8. 海康SDK编程指南(C#二次开发版本)
  9. Oracle执行计划——Oracle 如何启用执行计划
  10. 关于sql、mysql语句的模糊查询分类与详解,包括基本用法和mapper.xml文件里插入写法
  11. Redis学习——Redis持久化之AOF备份方式保存数据
  12. android应用集成google登录
  13. C# winform在关闭窗体的时候及时释放内存问题
  14. 计算机网络学习-20180901-TCP/IP协议的五大分层
  15. sql server 备份与恢复系列四 大容量模式下的备份与还原
  16. [HNOI2018]寻宝游戏
  17. RSA 算法
  18. 子分区 复合分区 Subpartitioning
  19. redis 的 docker 镜像使用
  20. 通过微信Android和iOS版,看两大系统的差异

热门文章

  1. STM32使用HAL库,使用延时卡死的问题。
  2. 自动化登录QQ脚本
  3. testNG之测试报告
  4. Log4net日志文件自动按月份存放和日志独占问题的解决
  5. BZOJ 1095: [ZJOI2007]Hide 捉迷藏 动态点分治+堆
  6. linux中的selinux到底是什么
  7. poj 2010 Moo University - Financial Aid 最大化中位数 二分搜索 以后需要慢慢体会
  8. Struts2理解?
  9. C++入门经典-例2.7-控制cout打印格式程序
  10. leetcode-easy-others-190. Reverse Bits-NO