简单就是很简单模拟一下...(简单也写了好久..synchronized使用的位置真的很重要..)
业务描述 假设有200张票,用4个线程去订票,不能有两个或者以上的线程订到了 同一个票(原因就不说了),当最后一张票卖掉的时候结束,再订就抛 异常提示出票卖完了。 业务分析,要实现以上功能, 1、需要创建一个车票类,初始化票,卖票的接口saleTicket() 2、自定义异常的一个类。 3、创建卖票线程类,在run方法中卖车票。 4、初始化车票的线程,负责初始化车票,也就是初始化Ticket类中的数组。 5、创建主方法进行测试。
测试类
车票类
自定义异常类
卖票线程类
初始化车票线程类
还有个小接口..
输出结果分布很均匀,甚至有时候只有两个线程抢票了,不知道为什么,有没有大佬帮我看看...
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)