zoukankan      html  css  js  c++  java
  • 【Java】Java多线程

    线程相关概念

    • 一个进程至少有一个线程
    • 在Java中,一个进程至少有两个线程,一个是main线程,一个是垃圾回收线程
    • 守护线程:JVM会在只剩下守护线程的时候结束,也就是说所有非守护线程结束,JVM就会结束
      - 典型例子:main线程(非守护线程,不能设置成守护线程),垃圾回收线程(守护线程)
    • 线程的状态:NEW、RUNNABLE、BLOCKED、WAITING、TIMED_WAITING、TERMINATED
    • 线程优先级:[1,10]. 优先级越高不代表一定优先于优先级低的线程执行,而是会比低的得到更多的CPU资源
    • 打印线程的相关信息
            System.out.println("getName: "+Thread.currentThread().getName());
            System.out.println("getContextClassLoader: "+Thread.currentThread().getContextClassLoader());
            System.out.println("getId: "+Thread.currentThread().getId());
            System.out.println("getPriority: "+Thread.currentThread().getPriority());
            System.out.println("getStackTrace: "+Thread.currentThread().getStackTrace());
            System.out.println("getState: "+Thread.currentThread().getState());
            System.out.println("getThreadGroup: "+Thread.currentThread().getThreadGroup());
            System.out.println("getUncaughtExceptionHandler: "+Thread.currentThread().getUncaughtExceptionHandler());
            System.out.println("getClass: "+Thread.currentThread().getClass());
            System.out.println("toString: "+Thread.currentThread().toString());
            System.out.println("isAlive: "+Thread.currentThread().isAlive());
            System.out.println("isDaemon: "+Thread.currentThread().isDaemon());
            System.out.println("isInterrupted: "+Thread.currentThread().isInterrupted());
            System.out.println("Thread: "+Thread.currentThread());
    

    创建线程的四种方式

    • 继承Thread
    • Runnable
    • Callable
    • 线程池
  • 相关阅读:
    Cocos2d-x3.0游戏实例之《别救我》第四篇——乱入的主角
    TRIZ系列-创新原理-21-高速通过原理
    “cvSnakeImage”: 找不到标识符
    21世纪创业与知识之间的辩证关系
    Android导航栏ActionBar的具体分析
    HDU4565 && 2013年长沙邀请赛A题
    从切比雪夫不等式到大数定理
    在线笔试琐碎
    在线笔试琐碎
    算法求解中的变量、数组与数据结构(STL 中的容器)
  • 原文地址:https://www.cnblogs.com/0nePlece/p/15068180.html
Copyright © 2011-2022 走看看