多线程实现网络购票"/>
多线程实现网络购票
多线程共享数据引发的问题
多线程实现网络购票,用户提交购票信息后:
①网站修改网站车票数据;
②显示出票反馈信息给用户;
package H2.p5练习;
/*
* 多线程共享数据引发的问题
多线程实现网络购票,用户提交购票信息后:
①网站修改网站车票数据;
②显示出票反馈信息给用户;
* */
public class Ticket implements Runnable{private int count=10;//记录剩余的票数private int num=0;//记录抢到的票public void run() {while (true){if (count<=0){break;}count--;num++;try {Thread.sleep(5000);} catch (InterruptedException e) {e.printStackTrace();}System.out.println(Thread.currentThread().getName()+"抢到第"+num+"张票,剩余"+count+"张票");}}public static void main(String[] args) {Ticket t1=new Ticket();Thread thread=new Thread(t1,"黄牛党");Thread thread1=new Thread(t1,"淘跑跑");Thread thread2=new Thread(t1,"抢票代理");thread.start();thread1.start();thread2.start();/*不是从第一张票开始;存在多人抢到一张票的情况;有些票号没有被抢到;原因:多个线程操作同一共享资源时,将引发数据不安全问题。解决办法:使用线程的同步*/}}
更多推荐
多线程实现网络购票
发布评论