完成操作系统作业Java模拟多线程卖票

/*** @Author: crush* @Date: 2021-05-12 16:24* version 1.0*/
public class SellTicketTask implements Runnable {/*** 一百张票*/private int ticketCount = 100;@Overridepublic void run() {while (true) {// 同步代码块 防止超买  这一段也是临界区 synchronized (this) {if (ticketCount <= 0) {break;} else {try {Thread.sleep(10);} catch (InterruptedException e) {e.printStackTrace();}ticketCount--;System.out.println(Thread.currentThread().getName() + ":还剩下--" + ticketCount + "张票");}}}}
}

启动多线程测试:

/*** @Author: crush* @Date: 2021-05-12 16:30* version 1.0*/
public class SellTickTaskDemo {public static void main(String[] args) {SellTicketTask sellTicketTask = new SellTicketTask();Thread t1 = new Thread(sellTicketTask);Thread t2 = new Thread(sellTicketTask);Thread t3 = new Thread(sellTicketTask);t1.setName("售票窗口1:");t2.setName("售票窗口2:");t3.setName("售票窗口3:");t1.start();t2.start();t3.start();}
}

自言自语

操作系统真的不简单。

Java 多线程模拟卖票相关推荐

  1. java多线程并发卖票问题

    最近学习遇到了经典的多线程并发的卖票问题,在网上搜了一些答案,还是决定自己写一写看,于是就出现了这篇文章,希望对初学者有些帮助!!! package practice.threadsafe; /* 多 ...

  2. java多线程,卖票案例

    目录 卖票案例 测试代码 代码1 代码2,卖票问题的思考 代码3 代码4 代码5 卖票案例 测试代码 package com.itheima_06;/*需求:某电影院目前正在上映国产大片,共有100张 ...

  3. java多线程重复卖票的问题

    上代码: public class Test {public static void main(String[] args) {ThreadTicket ticket = new ThreadTick ...

  4. Java多线程模拟售票系统

    Java创建多线程的两种基本方法: 方法1.继承Thread类 (1)定义子类,继承Thread类,重写该类的run()方法作为线程执行体; (2)创建该子类的实例作为线程对象; (3)调用线程对象的 ...

  5. java多线程模拟购买火车票

    java多线程模拟购买火车票 本次做的是一个火车票的售卖模拟,不管用户是在窗口还是APP上购买,必然不可能买到同一张票这也就是说一张票的售卖必然是一个线程在操作的,所以,我们在写代码是也要注意这一点 ...

  6. Java多线程 模拟 购买 退订 机票

     Java多线程 模拟 购买 退订 机票 package cn.com.cloud.sea.thread; /*** @author HenryLee* @version 1.0* 买票*/ publ ...

  7. java多线程模拟龟兔赛跑,JAVA多线程模拟龟兔赛跑

    JAVA多线程模拟龟兔赛跑! class Rabbit extends Thread{ Tortoise tor; int Journey; int RabbitSpeed; public Rabbi ...

  8. java 卖票问题_Java之多线程窗口卖票问题(Thread)

    /** * * 例子:创建三个窗口卖票,总票数为100张.使用继承Thread类的方式 * * 存在线程的安全问题,待解决. * */ class Window extends Thread{ pri ...

  9. 利用JAVA多线程模拟售票系统,对统一资源进行处理

    首先多线程处理统一资源的方式有两种 分别介绍一下两者的区别 synchronized与Lock的区别 1.Lock不是Java语言内置的,synchronized是Java语言的关键字 2.synch ...

最新文章

  1. hbase原理与实践_HBase 性能调优第一弹:内存篇
  2. VMware虚拟机不能联网的解决办法
  3. 二层交换机可以划分vlan吗_二层交换机上,属于不同VLAN的PC该如何通信
  4. 56.ISE综合,在chipscope信号列表看不到
  5. 分子克隆基础:什么是质粒
  6. 如何做一个优秀的销售代表
  7. 【并查集】封锁阳光大学(P1330)
  8. 如何卸载pip 重新安装mysql_pip install cymysql失败的解决办法 | 厘米天空
  9. Effective C++学习第五天
  10. 一键离线下载python安装包:
  11. JAVA进阶教学之(Date日期的处理)
  12. Python自省 type(),dir(),getattr(),hasattr(),isinstance().
  13. uniapp map 制作一个简单的地图导航
  14. 计算机网络线接法,电脑网线水晶头接法图解
  15. Hexo | yilia主题美化
  16. Cura gui 代码编译流程
  17. 如何截图整个网页 网页截图
  18. spacy 英文模型下载_英语文本处理工具库2 — spaCy
  19. 弘辽科技:惊!原来吸引淘宝买家眼球的标题是这么写出来的!
  20. 统计图表插件Chart.js(前端常用图表)

热门文章

  1. 释疑のCONTEXTS
  2. 检查 ABAP/4 程序用户的 权限
  3. 欠122亿乐视能不能“真还”?数据拆解乐视债务账单
  4. 进阶的“车厘子自由”,进化的“淘宝特价版”
  5. html 字号 宽度 像素,JS根据设备宽度设置根节点(html)font-size字体大小
  6. 18python入门到精通_《Python从入门到精通(60课)》18 序列类型之元组
  7. Python技巧:不要在for与while循环后写else块
  8. Python 代码实现模糊查询
  9. 在Python中用turtle函数画同心圆
  10. 浅析Python3中的bytes和str类型