首页 > 编程语言 > 详细

JAVA多线程售票问题

时间:2016-03-11 15:33:19      阅读:137      评论:0      收藏:0      [点我收藏+]

//定义一个类实现Runnable接口,定义一个需要同步的售票方法,然后重写run方法调用售票的sale方法

[java] view plain copy
 

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

JAVA多线程售票问题

原文:http://www.cnblogs.com/DIMON/p/5265794.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!