Java_19_Thread类的有关方法

1、void start() 启动线程,并执行对象的run方法
2、run() 线程在被调用时执行的操作
3、getName() 返回线程名称
4、setName()设置线程名称
5、Thread currentThread() 返回当前线程。
6、yield()释放当前CPU的执行权
7、join():在线程a中调用线程b的join(),此时线程a就进入堵塞状态,直到线程b完成执行完,线程a才会结束堵塞状态(这个我写出来不明显,自己去试试) 需要处理异常

 try {
                        join();
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }

8、sleep(long a):让当前线程睡眠指定的时间,a是毫秒数也需要处理异常

  try {
                        sleep(10);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }

9、isAlive():判断当前线程是否存活 返回turn和false

代码实例

/**
 *
 * 测试Thread中的常用方法
 *
 * 1、void start()  启动线程,并执行对象的run方法
 * 2、run() 线程在被调用时执行的操作
 * 3、getName() 返回线程名称
 * 4、setName()设置线程名称
 * 5、Thread currentThread() 返回当前线程。
 *
 * @Author: GenGen
 * @Description: 6Ge
 * @DateTime: 2022/4/4 19:17
 **/
public class ThreadMethodTest {
    public static class Tread1 extends  Thread{
        @Override
        /**
        * @Author: 有根
        * @Description:
        * @DateTime: 19:21 2022/4/4
        * @Params: []
        * @Return []
        */
        public void run() {
            Thread.currentThread().setName("偶数线程");
            for (int i = 0; i < 100; i++) {
                if (i % 2 == 0){
                 System.out.println(Thread.currentThread().getName()+i);
                }
            }
        }
    }
    /*
    * @Author: GenGen
    * @Description: 6Ge
    * @DateTime: 2022/4/4 19:17
    **/
    public static class Thread2 extends Thread{
        @Override
        /**
        * @Author: 有根
        * @Description: 
        * @DateTime: 19:30 2022/4/4
        * @Params: []
        * @Return []
        */
        public void run() {
            Thread.currentThread().setName("三五整除线程");
            int a = 3;
            int b = 5;
            for (int i = 0; i < 1000; i++) {
                if (i%3 == 0 && i%5 ==0){
                    System.out.println(Thread.currentThread().getName()+i);
                }
            }
        }
    }
    public static void main(String[] args) {
        Tread1 tread1 = new Tread1();
        Thread2 thread2 = new Thread2();
        tread1.start();
        thread2.start();
    }
}

线程优先级等级

MAX_PRIORITY:10

MIN_PRIORITY:1

NORM_PRIORITY:5 (默认优先级)

涉及方法

getPriority():返回线程优先级
setPriority(int newPritrity):改变线程的优先级

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容