import java.util.ArrayList;
import java.util.List; public class 多线程 {
// public static int j=0;
public static long a=0;
public static void main(String[] args) throws InterruptedException {
List<Thread> list = new ArrayList<Thread>();
System.out.println(System.currentTimeMillis());
a=System.currentTimeMillis();//开始运行计时器 aa a1 = new aa();
Thread aa1= new Thread(a1,"1号");;//都共用一个,分成不同的线程
Thread aa2= new Thread(a1,"2号");;
Thread aa3= new Thread(a1,"3号");;
Thread aa4= new Thread(a1,"4号");;
Thread aa5= new Thread(a1,"5号");;
list.add(aa1);//把每一个线程都放入里面
list.add(aa2);
list.add(aa3);
list.add(aa4);
list.add(aa5);
aa1.setPriority(10);//设置线程的优先级
aa2.setPriority(10);
aa3.setPriority(10);
aa4.setPriority(10);
aa5.setPriority(10);
aa1.start();//开始每一个线程
aa2.start();
aa3.start();
aa4.start();
aa5.start(); // for (int i = 0; i < 4; i++) {
// list.get(i).join();
// }
// System.out.println(System.currentTimeMillis());
Thread currtime = new Thread(new cc());
currtime.setPriority(1);
currtime.start();//结束运行计时器
System.out.println("546545645645646546468468461654654654654");
// System.out.println(j);
} }
class aa implements Runnable{
//这是车票,调用的时候分为不同的车站口出票
// 多线程 a = new 多线程();
private int b =1000;
@Override
public void run() {
// TODO Auto-generated method stub
while(b>0) {
Thread th = Thread.currentThread();
String s = th.getName();
System.out.println(s+"正在出售第"+b--+"张票");
}
} } class cc implements Runnable{
//计时
@Override
public void run() {
多线程 a = new 多线程();
// TODO Auto-generated method stub
System.out.println(System.currentTimeMillis()-a.a);
} }
class bb implements Runnable{ @Override
public void run() {
// TODO Auto-generated method stub
for (int i = 1; i < 1000000; i++) {
int j=1+1+1+1;
}
} }

java实现多线程(车站卖票)的更多相关文章

  1. java学习多线程之卖票示例

    这一节我们来说一个示例就是卖票示例: 需求: 我们现在有100张票,然后分四个窗口来卖,直到卖完为止. 思路: 1.先定一个一个票类,描述票的属性,还有打印卖出的票,并且实现Runnable中的run ...

  2. Java之多线程窗口卖票问题(Runnable)

    /** * 例子:创建三个窗口卖票,总票数为100张.使用实现Runnable接口的方式 * 存在线程的安全问题,待解决. */class Window1 implements Runnable{ p ...

  3. Java之多线程窗口卖票问题(Thread)

    /** * * 例子:创建三个窗口卖票,总票数为100张.使用继承Thread类的方式 * * 存在线程的安全问题,待解决. * */class Window extends Thread{ priv ...

  4. java多线程实现卖票小程序

    package shb.java.demo; /** * 多线程测试卖票小程序. * @Package:shb.java.demo * @Description: * @author shaobn * ...

  5. java 多线程之卖票两种方式

    1.通过extends Thread /* 需求:简单的卖票,多个窗口同时买票 (共用资源) 创建线程的第二种方式:实现Runnable接口 步骤: 1,定义类实现Runnable接口 2,覆盖/重写 ...

  6. java笔记线程电影院卖票最终版

    * 如何解决线程安全问题呢? *  * 要想解决问题,就要知道哪些原因会导致出问题:(而且这些原因也是以后我们判断一个程序是否会有线程安全问题的标准) * A:是否是多线程环境 * B:是否有共享数据 ...

  7. java笔记线程电影院卖票改进版

    通过加入延迟后,就产生了连个问题: * A:相同的票卖了多次 *   CPU的一次操作必须是原子性的 * B:出现了负数票 *   随机性和延迟导致的 public class SellTicketD ...

  8. JAVA培训—线程同步--卖票问题

    线程同步方法: (1).同步代码块,格式: synchronized (同步对象){ //同步代码 } (2).同步方法,格式: 在方法前加synchronized修饰 问题: 多个人同时买票. 1. ...

  9. Java中多线程的使用(超级超级详细)线程安全原理解析 4

    Java中多线程的使用(超级超级详细)线程安全 4 什么是线程安全? 有多个线程在同时运行,这些线程可能会运行相同的代码,程序运行的每次结果和单线程运行的结果是一样的,而且其他变量的值也和预期的值一样 ...

随机推荐

  1. CentOS7 Installing Python3

    最近开始学习python. python火了这么久,我终于还是跪舔它了,我是一个跟风的人,学过C.C#.JAVA.PHP,无一例外的浅尝即止,不知道我这双已经近视的眼,确认过的眼神还对不对,希望pyt ...

  2. hadoop与spark的处理技巧(一)Top N处理技巧

    1.MR的topN处理方案,假设所有输入Key都唯一 2.MR的topN处理方案,假设输入Key不唯一 3.spark的topN处理方案,假设所有输入Key都唯一,不使用top()和takeOrder ...

  3. 弹性式数据集RDD

    弹性式数据集RDD ​ 一.RDD简介二.创建RDD        2.1 由现有集合创建        2.2 引用外部存储系统中的数据集        2.3 textFile & who ...

  4. sh: react-scripts: command not found after running npm start

    今天遇到一堆bug,从早上10点到现在8成的时间都像是浪费了..... https://stackoverflow.com/questions/40546231/sh-react-scripts-co ...

  5. P1880 [NOI1995]石子合并 区间dp

    P1880 [NOI1995]石子合并 #include <bits/stdc++.h> using namespace std; ; const int inf = 0x3f3f3f3f ...

  6. vagrant与vrtualbox的使用

    1.先要安装 vrtualbox和 vagrant  (以centos 7下面的为例): cd  /opt wget https://download.virtualbox.org/virtualbo ...

  7. mysql小白系列_13 Online DDL

    Online DDL: 一.FIC之前的添加删除二级索引: 1.首先创建临时表,定义目标新表的选项和索引 2.逐行拷贝数据到临时表 3.插入行时更新索引信息 4.数据全部被拷贝到新表后,删除旧表,re ...

  8. 检查可执行App类型是否为executable (腾讯上线预审核报错)otool工具使用

    https://blog.csdn.net/lovechris00/article/details/81561627 查看IPA文件的路径 1,解压缩 xcode导出的xxx.ipa文件 2,然后在解 ...

  9. C# 使用Word模板导出数据

    使用NPOI控件导出数据到Word模板中方式: 效果如下: Word模板: 运行结果: 实现如下: Student.cs using System; using System.Collections. ...

  10. Flexible 应用

    Flexibl.js 为我们做了一项工作,媒体查询工作,节约了许多操作 举个例子,移动端的页面设计稿是750px,我们自己换算rem单位,比如我想把屏幕划分为15等份,我就750/15=50,然后用所 ...