购票系统

来源:互联网 发布:华策招聘 知乎 编辑:程序博客网 时间:2024/04/29 10:06
package yw;import javax.swing.*;import java.awt.*;public class RegisterTest {            public static void main(String[] args) {                // TODO 自动生成的方法存根                ThreadSellTicket sTicket=new ThreadSellTicket(); //创建属于ThreadTest的对象sTicket                new Thread(sTicket).start();                new Thread(sTicket).start();//创建3个同优先级的线程                new Thread(sTicket).start();            }        }  class ThreadSellTicket implements Runnable{ //创建类ThreadTest,实现接口Runnable           private int tickets=10;            boolean flag=true;            public void run(){ //重写方法run(),在方法run()调用方法sale()                while (flag){                    sale();//创建同步方法sale()                }            }            synchronized public void sale(){                if(tickets>0 ){                    try{                        Thread.sleep(100);                    }                    catch(Exception e){ //各个售票线程对10张车票共同进行售票                        e.printStackTrace();                    }                    System.out.println(Thread.currentThread().getName() +"正在卖票:"+tickets);                    tickets--;                }                else{                    flag=false;//如果车票销售完,则将标识flag的置设置为false,此时方法run()的循坏条件不满足,从而结束run(),即结束线程                }            }        }

运行结果如下:
这里写图片描述

原创粉丝点击