多线程的两种方法(卖票系统展示)

Posted 冰逸101

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多线程的两种方法(卖票系统展示)相关的知识,希望对你有一定的参考价值。

public  class MyThread1 implements Runnable{
    
    int i=20;
 String name;
    public MyThread1() {
        // TODO 自动生成的构造函数存根
        this.name=name;
    }




    public void run(){
        
        for(int x=0;x<20;x++){
            if(i>0){
                System.out.print(Thread.currentThread().getName()+"    ");
                System.out.println("售票窗口:"+"  "+"余票\t"+i--);
                
            }
        }
    }
}
 class Test{
    public static void main(String []args){
        
        MyThread1 myth1=new MyThread1();//创建线程对象
        
        new Thread(myth1,"线程1").start();
        
        new Thread(myth1,"线程2").start();
        
        new Thread(myth1,"线程3").start();
//        myth1.start();
//        myth1.start();
//        myth1.start();
    }
}
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
20张票的输出结果:为三个线程共卖出20张票

public class MyThread extends Thread{
//String name;
int i=20;

public void run (){
    for(int x =0;x<20;x++){
        if(i>0){
            System.out.println("卖票"+"     "+"余票\t="+i--);
        }
    }
}
////
}
//创建了三个线程,每个线程售出20张票
 class TestDemo{
    public static void main(String []args){
    MyThread myth1=new MyThread();
    MyThread myth2=new MyThread();
    MyThread myth3=new MyThread();
    myth1.start();
    myth2.start();
    myth3.start();
    
    }
}
————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
20张票的输出结果为:三个线程每个卖出20张,共卖出60张票

 

以上是关于多线程的两种方法(卖票系统展示)的主要内容,如果未能解决你的问题,请参考以下文章

多线程(多窗口卖票例子)

java多线程编程的两种方式

线程实现的两种方式及区别

Java多窗口卖票问题详解

Java多线程:线程同步详解

Java-将多线程停止的两种方法