首页 > 代码库 > Thread:多线程 实现简单购票
Thread:多线程 实现简单购票
package com.heima.it;
public class duoXiCheng extends Thread{
//继承Thread类
//定义一个票数的变量 static 静态的 公用的 票数
static int tickets = 100;
//
public duoXiCheng() {
super();
// TODO 自动生成的构造函数存根
}
public duoXiCheng(String name) {
super(name);
// TODO 自动生成的构造函数存根
//构造一个有参数的方法传递一个名字进来
}
@Override
public void run() {
// TODO 自动生成的方法存根
//重写run()方法
while(true){
//synchronized 加锁 格式: 字节码文件
synchronized (duoXiCheng.class) {
//3.创建 Thread 类的子类的对象,
if(tickets<1){
//票数少于1张退出循环
break;
}
try {
//暂停100毫秒
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
//多线程输出语句
System.out.println(getName()+"正在出售第"+ (tickets--) +"票");
}
}
//程序结束
}
}
}
}
/**************************************************************************************************************************/
package com.heima.it;
public class pingTai {
public static void main(String[] args) {
// TODO 自动生成的方法存根
duoXiCheng dxc = new duoXiCheng("窗口1:");
dxc.start();
duoXiCheng dxc2 =new duoXiCheng("窗口2:");
dxc2.start();
duoXiCheng dxc3 =new duoXiCheng("窗口3:");
dxc3.start();
}
}
Thread:多线程 实现简单购票