码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA多线程售票问题

时间:2016-03-11 15:35:48      阅读:261      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!