黑马程序员技术交流社区
标题:
售票多线程问题
[打印本页]
作者:
H-Deka
时间:
2014-3-26 17:22
标题:
售票多线程问题
火车票售票多线程的思路是什么?需要使用同步代码块吗?
作者:
学习代码
时间:
2014-3-26 20:06
class Demo extends Thread
{
private static int key=100;
public void run()
{ while(true)
{if(key>0)
{
System.out.println(Thread.currentThread().getName()+";;="+key--);
}
}
}
}
class A
{
public static void main(String[] args)
{
Demo d=new Demo();
Demo d1=new Demo();
Demo d2=new Demo();
Demo d3=new Demo();
d.start();
d1.start();
d2.start();
d3.start();
}
}
复制代码
思路就是 车票有多少
用多少个窗口来卖,每个窗口看作一个线程,我做的时候是这样想的。
作者:
linweiwen
时间:
2014-3-26 20:29
楼上的代码就是教学视频当中的例子程序,
不需要同步代码块。
步骤其实就是 产生线程的其中一种方法,
继承Thread类,然后在run()方法里面写你要实现的功能,最后start相应的线程。
思路就是多线程的思想,将原来一个窗口售票,改为多个窗口售票,加大效率,
任务还是售票的任务,但只不过是多了几个“帮手”而已,
有点抽象,还是需要楼主你自己理解。
作者:
追逐
时间:
2014-3-26 20:30
设为首页实名认证切换到宽版开启辅助访问官网首页|关于我们|联系我们|登陆报名系统
快捷导航
IT学习社区论坛首页积分商城视频下载
帖子 搜索
追逐我的设置消息提醒 退出
黑马程序员IT技术论坛»论坛首页›学员专区›JavaEE+Android入学交流区›第30,31届JavaEE+Android技术交流区›售票小例子-------Runnable
【官方】申领16G高清视频学习光碟
大量高清学习视频教程订阅 黑马全攻略之住宿生活篇
热版推荐:官方公开课|学员感言|企业招聘|技术沙龙
热门推荐
黑马史诗级屌丝谈面试
Net&Unity2014招聘会
大型程序员招聘会
军校妹子,深谈心中的黑马程序员【高清视频】在游戏世界里驰骋【iOS培训】回帖领ios视频教程年薪15W的万元哥分享面试经验零基础到20期面试—全过程分享黑客与画家——工作3年再转型【强哥笔记】之Java高新技术一个为进云六的C++屌丝28个日夜畅谈从屌丝程序员到大牛成长之路8k、9k offer扎堆我的面试感言高薪就业,浅谈面试重点和难点一次面试毙掉8.5k offer牛人经验
返回列表
生成文章
查看: 27|回复: 0
[资源分享] 售票小例子-------Runnable [复制链接]
追逐
72
主题
170
帖子
48
技术分
电梯直达楼主
发表于 2014-3-18 09:19:56 | 只看该作者
/*
简单的买票程序。多个窗口同时卖票
创建线程的第二种方式:实现Runnable接口
步骤:
1,定义类实现Runnable接口
2,覆盖Runnable接口中的run方法,
将线程要运行的代码存放在该run方法中。
3,通过Thread类建立线程对象。
4,将Runnable接口的子类对象作为实际参数传递给Thread类的构造函数。
为什么要将Runnable接口的子类对象传递给Thread类的构造函数
因为,自定义的run方法所属的对象是Runnable接口的子类对象
所以要让线程去找到指定对象的run方法,就必须明确该run方法所属
对象。
5,调用Thread类的start方法开启线程并调用Runnable接口子类的run方法。
*/
//定义类实现Runnable接口
class Test1 implements Runnable {
private int piao = 100;
public void run() {
while(true) {
if(piao > 0) {
System.out.println(Thread.currentThread().getName() + "run..." + piao--);
}
}
}
}
class ThreadTest1 {
public static void main(String[] args) {
//创建Runnable接口的子类对象
Test1 t = new Test1();
//创建四个线程,把Runnable接口的子类对象当成实参传递给线程的构造函数
Thread t1 = new Thread(t);
Thread t2 = new Thread(t);
Thread t3 = new Thread(t);
Thread t4 = new Thread(t);
//开启四个线程
t1.start();
t2.start();
t3.start();
t4.start();
}
}
post_newreply
相关帖子
多线程售票的例子解释多线程售票和生产消费者例子对比的问题关于override的一个小例子求一个比较直观的例子求解下售票是哪个地方出问题了一个简单例子引发的血案动态更改屏幕方向的简单例子(landscape与portrait)问一下timer timertask 定时器的具体应用场景,最好举个例子创建java文件列表例子中的问题死锁一个例子代码演示,面试中可能会遇到
分享到:
QQ好友和群
腾讯微博
QQ空间
收藏
评分
分享
点评回复 编辑
生成文章
返回列表
发表回复
高级模式
BColorImageLinkQuoteCodeSmilies|
本版积分规则发表回复 将此回复同步到 腾讯微博 | 回帖后跳转到最后一页
关闭
站长推荐 5/5
六个offer轻松搞定的我
从一个毫无斗志的少年,到拿到8.5k offer的Java软件工程师的故事:初入黑马,气馁的我;初入黑马,气馁的我;投简历,高效的终极秘诀;离开黑马,斗志高昂的我。
查看 »
学员培训Java培训.Net培训关于我们公司简介联系方式招聘信息公司大事记帮助信息新手指南如何报名自学教程服务中心手机客户端下载客户端关注我们新浪微博腾讯微博手机扫一扫
举报|小黑屋|手机版|Archiver|黑马程序员IT技术论坛 ( 京ICP备08001421号-2 ) 站长统计 360网站安全检测平台
GMT+8, 2014-3-26 20:20 , Processed in 0.171878 second(s), 40 queries .
Powered by Discuz! X3.1
Copyright © 2011-2014 Design: itheima.com
作者:
追逐
时间:
2014-3-26 20:32
简单的买票程序。多个窗口同时卖票
创建线程的第二种方式:实现Runnable接口
步骤:
1,定义类实现Runnable接口
2,覆盖Runnable接口中的run方法,
将线程要运行的代码存放在该run方法中。
3,通过Thread类建立线程对象。
4,将Runnable接口的子类对象作为实际参数传递给Thread类的构造函数。
为什么要将Runnable接口的子类对象传递给Thread类的构造函数
因为,自定义的run方法所属的对象是Runnable接口的子类对象
所以要让线程去找到指定对象的run方法,就必须明确该run方法所属
对象。
5,调用Thread类的start方法开启线程并调用Runnable接口子类的run方法。
*/
//定义类实现Runnable接口
class Test1 implements Runnable {
private int piao = 100;
public void run() {
while(true) {
if(piao > 0) {
System.out.println(Thread.currentThread().getName() + "run..." + piao--);
}
}
}
}
class ThreadTest1 {
public static void main(String[] args) {
//创建Runnable接口的子类对象
Test1 t = new Test1();
//创建四个线程,把Runnable接口的子类对象当成实参传递给线程的构造函数
Thread t1 = new Thread(t);
Thread t2 = new Thread(t);
Thread t3 = new Thread(t);
Thread t4 = new Thread(t);
//开启四个线程
t1.start();
t2.start();
t3.start();
t4.start();
}
}
复制代码
你可以参考一下这个例子。加深一下理解
作者:
﹊佑雨时杰↘
时间:
2014-4-8 17:45
这个是需要同步的 谢谢
作者:
枫桥夜泊
时间:
2014-6-2 11:17
火车票多线程,这个非常经典!!!!
作者:
D-小狙
时间:
2014-7-7 09:33
不错,,,,,,,,,,,,
作者:
SLJ_920808
时间:
2014-7-7 09:56
学习代码 发表于 2014-3-26 20:06
思路就是 车票有多少
用多少个窗口来卖,每个窗口看作一个线程,我做的时候是这样想的。 ...
旁观学习一下。
作者:
没劲睡觉
时间:
2014-10-25 12:32
和图书馆借书的线程是一样的不?学习了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2