• 线程1


      写本系列的目是为了重新梳理这部分内容;而且我的最初的目的是为了搞懂Java中的异步的实现方式,其中要使用到Callable这个类。

    1 线程的第一种创建方式

      在JavaAPI中明确的规定了创建线程存在两种方式,可是在实际的开发过程中或者面试问到的问题时回答两种通常不能令人满意。而且我对于第三种确实是不太熟悉的。

      线程在Java中使用Thread类来表示;创建线程之后需要启动线程,因此方法start()就是启动线程的方式,至于我们的线程究竟要干什么,则是在run()方法中编写。

    package com._thread;
    
    /**
     * 创建线程的第一种方式:继承Thread类
     * @author gosaint
     *
     */
    public class ThreadDemoNo1 extends Thread{
        /**
         * 在这里我们编写线程要干的事。我让线程打印50次我在玩游戏
         * this.getName()返回当前线程的名称
         */
        @Override
        public void run() {
            for (int i = 0; i < 50; i++) {
                System.out.println(this.getName()+"我在玩游戏"+i);
            }
        }
        /**main方法是主线程,当i=10的时候我启动线程*/
        public static void main(String[] args) {
            for (int i = 0; i < 50; i++) {
                System.out.println("我在听音乐!"+i);
                if(i==10){
                    // Thread(Runnable target) 该构造器中的参数是Runnable接口对象
                    // 恰好是我们的Thread的子类
                    Thread t=new ThreadDemoNo1();
                    new Thread(t).start();//启动线程
                }
            }
        }
    
    }

    执行结果如下:

    我在听音乐!0
    我在听音乐!1
    我在听音乐!2
    我在听音乐!3
    我在听音乐!4
    我在听音乐!5
    我在听音乐!6
    我在听音乐!7
    我在听音乐!8
    我在听音乐!9
    我在听音乐!10
    我在听音乐!11
    我在听音乐!12
    我在听音乐!13
    我在听音乐!14
    我在听音乐!15
    我在听音乐!16
    Thread-0我在玩游戏0
    Thread-0我在玩游戏1
    Thread-0我在玩游戏2
    Thread-0我在玩游戏3
    Thread-0我在玩游戏4
    Thread-0我在玩游戏5
    我在听音乐!17
    Thread-0我在玩游戏6
    Thread-0我在玩游戏7
    Thread-0我在玩游戏8
    Thread-0我在玩游戏9
    Thread-0我在玩游戏10
    Thread-0我在玩游戏11
    Thread-0我在玩游戏12
    Thread-0我在玩游戏13
    Thread-0我在玩游戏14
    Thread-0我在玩游戏15
    Thread-0我在玩游戏16
    Thread-0我在玩游戏17
    Thread-0我在玩游戏18
    Thread-0我在玩游戏19
    Thread-0我在玩游戏20
    Thread-0我在玩游戏21
    Thread-0我在玩游戏22
    Thread-0我在玩游戏23
    Thread-0我在玩游戏24
    Thread-0我在玩游戏25
    Thread-0我在玩游戏26
    Thread-0我在玩游戏27
    Thread-0我在玩游戏28
    Thread-0我在玩游戏29
    Thread-0我在玩游戏30
    Thread-0我在玩游戏31
    Thread-0我在玩游戏32
    Thread-0我在玩游戏33
    Thread-0我在玩游戏34
    Thread-0我在玩游戏35
    Thread-0我在玩游戏36
    Thread-0我在玩游戏37
    我在听音乐!18
    Thread-0我在玩游戏38
    Thread-0我在玩游戏39
    Thread-0我在玩游戏40
    Thread-0我在玩游戏41
    Thread-0我在玩游戏42
    Thread-0我在玩游戏43
    Thread-0我在玩游戏44
    Thread-0我在玩游戏45
    Thread-0我在玩游戏46
    Thread-0我在玩游戏47
    Thread-0我在玩游戏48
    Thread-0我在玩游戏49
    我在听音乐!19
    我在听音乐!20
    我在听音乐!21
    我在听音乐!22
    我在听音乐!23
    我在听音乐!24
    我在听音乐!25
    我在听音乐!26
    我在听音乐!27
    我在听音乐!28
    我在听音乐!29
    我在听音乐!30
    我在听音乐!31
    我在听音乐!32
    我在听音乐!33
    我在听音乐!34
    我在听音乐!35
    我在听音乐!36
    我在听音乐!37
    我在听音乐!38
    我在听音乐!39
    我在听音乐!40
    我在听音乐!41
    我在听音乐!42
    我在听音乐!43
    我在听音乐!44
    我在听音乐!45
    我在听音乐!46
    我在听音乐!47
    我在听音乐!48
    我在听音乐!49

      

  • 相关阅读:
    HDU 2844 Coins(多重背包)
    HDU 4540 威威猫系列故事——打地鼠(DP)
    Codeforces Round #236 (Div. 2)
    FZU 2140 Forever 0.5
    HDU 1171 Big Event in HDU(DP)
    HDU 1160 FatMouse's Speed(DP)
    ZOJ 3490 String Successor
    ZOJ 3609 Modular Inverse
    ZOJ 3603 Draw Something Cheat
    ZOJ 3705 Applications
  • 原文地址:https://www.cnblogs.com/gosaint/p/8319496.html
Copyright © 2020-2023  润新知