2017.12.12 java多线程
来源:互联网 发布:izeeyu是什么软件 编辑:程序博客网 时间:2024/06/16 03:00
用Thread的子类创建线程
package work05;//兔子 ---多线程public class Robot extends Thread {public void run() {for (int i = 1; i <= 10; i++) {System.out.println("兔子跑了" + i + "步!");}}}
package work05;//乌龟---多线程public class Torties extends Thread {public void run() {for (int i = 1; i <= 10; i++) {System.out.println("乌龟跑了" + i + "步!");}}}
package work05;public class Demo01 {public static void main(String[] args) {// TODO Auto-generated method stubRobot r = new Robot();r.start();// 在主运行线程上又新产生一个线程Torties t = new Torties();t.start();for (int i = 1; i <= 10; i++) {System.out.println("我跑了" + i + "步!");}}}
用Runnable接口方式创建线程
package work05;public class Robot1 implements Runnable {@Overridepublic void run() {// TODO Auto-generated method stubfor (int i = 1; i <= 10; i++) {System.out.println("兔子跑了" + i + "步!");}}}
package work05;public class Torties1 implements Runnable {@Overridepublic void run() {// TODO Auto-generated method stubfor (int i = 1; i <= 10; i++) {System.out.println("乌龟跑了" + i + "步!");}}}
package work05;public class Demo0101 {public static void main(String[] args) {// TODO Auto-generated method stubRobot1 r1 = new Robot1();Thread r2 = new Thread(r1);r2.start();Torties1 t1 = new Torties1();Thread t2 = new Thread(t1);t2.start();}}
简单的12306售票
package work05;public class Demo12306 implements Runnable {int num = 10;@Overridepublic void run() {// TODO Auto-generated method stubint sum = 0;String list = "";while (true) {if (num <= 0) {break;}try {Thread.sleep(300);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}// 同步锁synchronized (this) {if (num <= 0) {break;}System.out.println(Thread.currentThread().getName() + "抢到了"+ num);list = list + num + ",";num--;sum++;System.out.println(Thread.currentThread().getName() + "抢到了"+ list);System.out.println(Thread.currentThread().getName() + "共抢到了"+ sum+"张票");}}}}
package work05;public class Demo123 {public static void main(String[] args) {// TODO Auto-generated method stubDemo12306 d = new Demo12306();Thread d1 = new Thread(d, "小明");Thread d2 = new Thread(d, "小红");Thread d3 = new Thread(d, "小华");d1.start();d2.start();d3.start();}}
阅读全文
0 0
- 2017.12.12 java多线程
- java多线程--12
- java基础12多线程
- Java基础12-多线程Thrad
- java基础要点(12)-多线程
- Java基础12--包--多线程
- 第12篇-JAVA 多线程
- java初入多线程12
- 【Java多线程】多线程死锁
- Java 多线程
- java 多线程
- java多线程
- JAVA多线程
- java多线程
- JAVA多线程
- java多线程
- JAVA 多线程
- Java多线程
- 在WIN7 搭建python 环境
- intellj idea 如何设置类头注释和方法注释
- web SSH项目报Table ‘performance_schema.session_variables’ doesn’t exist
- 在独立的java程序中使用jetty
- Goolgle knowledge graph API使用
- 2017.12.12 java多线程
- 开发项目遇到的大大小小问题总结
- 【深度学习】实时的物体识别-YOLO v2环境的搭建(4)
- MySQL 主从复制详解(详细)
- maven入门
- mysql中事件失效如何解决
- VOT2015 Benchmark简易教程
- PAT乙级1020. 月饼 (25) 背包问题
- Python checkio Cipher map解决方案