用JAVA中的多线程示例火车站售票问题

  1. class SaleTicket implements Runnable{  
  2.     private int tickets = 100;  
  3.     public void run(){  
  4.         while(tickets > 0){  
  5.             sale();  
  6.         }  
  7.     }  
  8.       
  9.     private synchronized void sale(){  
  10.         if(tickets > 0){  
  11.             System.out.println(Thread.currentThread().getName() + "卖出 第 "+ (100 - tickets + 1)+"张票");  
  12.             tickets--;  
  13.             try{  
  14.                 Thread.sleep(500);  
  15.             }catch(InterruptedException e){  
  16.                 e.printStackTrace();  
  17.             }  
  18.         }  
  19.     }  
  20. }  
  21.   
  22. public class JavaTest {  
  23.           
  24.     public static void main(String[] args){  
  25.   
  26.         SaleTicket st = new SaleTicket();  
  27.         Thread t1 = new Thread(st, "一号窗口");  
  28.         Thread t2 = new Thread(st, "二号窗口");  
  29.         Thread t3 = new Thread(st, "三号窗口");  
  30.         Thread t4 = new Thread(st,"四号窗口 ");  
  31.         t1.start();  
  32.         t2.start();  
  33.         t3.start();  
  34.         t4.start();            
  35.     }  
  36. }  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值