0
点赞
收藏
分享

微信扫一扫

Java购买火车票(初识并发)

后来的六六 2022-04-13 阅读 35
java

初识并发(购买火车票)

购买火车票

  • 发现问题:多个线程操作同一个资源的情况下,线程不安全,数据紊乱。

Code:

public class TicketDemo_04 implements Runnable{

    private int ticketNumber = 10; // 票数

    @Override
    public void run() {

        while (true){
            if (ticketNumber <= 0) {
                break;
            }

            try {
                Thread.sleep(200); // 线程休眠,CPU太快导致票都被一个人抢了,所以需要休眠
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            
            System.out.println(Thread.currentThread().getName()+"抢到了"+ticketNumber-- +"票");                                        
        }
    }

    public static void main(String[] args) {

        TicketDemo_04 td = new TicketDemo_04();

        new Thread(td,"云疏").start();
        new Thread(td,"若瑄").start();
        new Thread(td,"淼淼").start();
    }
}

在这里插入图片描述

举报

相关推荐

0 条评论