zoukankan      html  css  js  c++  java
  • JAVA多线程售票问题

    //定义一个类实现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. }  
  • 相关阅读:
    多层级makefile
    vscode常用快捷键
    unix socket接口
    以太网复习
    shell脚本算术运算
    1185: 零起点学算法92——单词数(C)
    1183: 零起点学算法90——海选女主角(C语言)
    1181: 零起点学算法88——偶数求和(C语言)
    1144: 零起点学算法51——数组中删数(C语言)
    列主元消去法&全主元消去法——Java实现
  • 原文地址:https://www.cnblogs.com/DIMON/p/5265794.html
Copyright © 2011-2022 走看看