多线程抢票,并发问题,数据安全异常
package iostudy.thread;
/**
* 共享资源
* 一份资源,三个代理商
* 当一份资源有多个代理去操作的时候就会存在并发问题
* 并发发生之后后期需要保证线程安全
* @since JDK 1.8
* @date 2021/6/1
* @author Lucifer
*/
public class Web12306 implements Runnable{
/*资源数量*/
private int ticketNum = 99;
/*重写run方法*/
这个写法会存在一个问题--->数据安全问题
多线程模拟比赛
package iostudy.thread;
/**
* 模拟龟兔赛跑
* 1、实现类写具体的实现方法--->循环、判断
* 2、具体方法工具类写判断方法--->供线程调用
* @since JDK 1.8
* @date 2021/6/1
* @author Lucifer
*/
public class Racer implements Runnable{
/*
1、这是具体的实现类,里面定义了具体的属性
2、重写了Runnable里面的run方法,该方法定义了具体的实现方式
3、判断方法新写一个方法去调用
*/
private static String winner; //定义胜利者