zoukankan      html  css  js  c++  java
  • Thread类常用方法

    Thread类构造方法:

    1.Thread();

    2.Thread(String name);

    3.Thread(Runable r);

    4.Thread(Runable r, String name);

    [java] view plain copy
     
     在CODE上查看代码片派生到我的代码片
    1. public class Test {  
    2.   
    3.     public static void main(String[] args) {  
    4.         /* 
    5.         MyThread thread1 = new MyThread(); 
    6.         MyThread thread2 = new MyThread("MyThread"); 
    7.         thread1.start(); 
    8.         thread2.start(); 
    9.         */  
    10.         MyRunnable run = new MyRunnable();  
    11.         Thread thread3 = new Thread(run);  
    12.         Thread thread4 = new Thread(run, "MyThread");  
    13.         thread3.start();  
    14.         thread4.start();  
    15.     }  
    16.   
    17. }  


    常用方法:

    start();//启动线程

    getId();//获得线程ID

    getName();//获得线程名字

    getPriority();//获得优先权

    isAlive();//判断线程是否活动

    isDaemon();//判断是否守护线程

    getState();//获得线程状态

    sleep(long mill);//休眠线程

    join();//等待线程结束

    yield();//放弃cpu使用权利

    interrupt();//中断线程

    currentThread();//获得正在执行的线程对象

    守护线程:也叫精灵线程,当程序只剩下守护线程的时候就会退出。

    守护线程 的作用类似在后台静默执行,比如JVM的垃圾回收机制,这个就是一个守护线程。而非守护线程则不会。

    [java] view plain copy
     
     在CODE上查看代码片派生到我的代码片
      1. MyRunnable run = new MyRunnable();  
      2.         Thread thread3 = new Thread(run);  
      3.         Thread thread4 = new Thread(run, "MyThread");  
      4.         //设置优先级别  
      5. //      thread3.setPriority(1);  
      6. //      thread3.setPriority(Thread.MAX_PRIORITY);  
      7. //      thread4.setPriority(10);  
      8.         thread3.setPriority(Thread.NORM_PRIORITY);  
      9.         thread4.setPriority(Thread.NORM_PRIORITY);  
      10.         //获得线程的优先级别  
      11.         System.out.println(thread3.getPriority());  
      12.         System.out.println(thread4.getPriority());  
      13.         System.out.println("----------------------");  
      14.         thread3.start();  
      15.         thread4.start();  
      16.         System.out.println("----------------------");  
      17.         System.out.println("线程3是否活动:"+thread3.isAlive());  
      18.         System.out.println("线程4是否活动:"+thread4.isAlive());  
      19.         System.out.println("----------------------");  
      20. //      thread3.setDaemon(true);//设置为守护线程,必须在启动之前设置  
      21.         System.out.println("线程3是否是守护线程:"+thread3.isDaemon());  
      22.         System.out.println("线程4是否是守护线程:"+thread4.isDaemon());  
      23.         System.out.println("----------------------");  
      24.         //获取线程状态  
      25.         System.out.println("线程3的状态:"+thread3.getState());  
      26.         System.out.println("线程4的状态:"+thread4.getState());  
      27.         try {  
      28.             thread4.join();//等待线程4的结束  
      29.         } catch (InterruptedException e) {  
      30.             e.printStackTrace();  
      31.         }  
  • 相关阅读:
    sql中触发器的使用
    sql中优化查询
    sql中case when语句的使用
    CSRF学习小结
    javascript正则表达式笔记
    elementUI单选框获取值
    elementUI内置过渡(折叠)
    elementUI内置缩放过渡(缩放)
    elementUi内置过渡动画(淡入)
    创建koa2项目
  • 原文地址:https://www.cnblogs.com/cyl048/p/6494022.html
Copyright © 2011-2022 走看看