欢迎访问宙启技术站
智能推送

Java中Thread类和Runnable接口的函数使用详解

发布时间:2023-05-27 09:19:30

Java中的Thread类和Runnable接口是并发编程中使用的两个重要的API,用于创建多线程程序。Thread类包含了一些函数,可以用来控制线程的启动、停止和休眠等操作;而Runnable接口则只有一个run()函数,用于定义线程的任务。本文将详细介绍Thread类和Runnable接口的函数使用。

一、Thread类的函数介绍

1. start():启动线程,当调用start()函数时,线程被创建并开始运行。

2. sleep(long millis):使当前线程休眠指定的毫秒数。

3. interrupt():中断线程的执行,当被中断的线程执行时,会抛出InterruptedException异常。

4. isAlive():判断线程是否还活着。如果线程还活着,即线程还没有执行完毕或被中断,则返回true。

5. join():等待该线程结束。当一个线程A调用另一个线程B的join()函数时,线程A会进入等待状态,直到线程B结束。

6. setName(String name):设置线程名称。

7. setPriority(int priority):设置线程的优先级。优先级的范围是1-10,其中1是最低优先级,10是最高优先级。

8. stop():强制中止线程。这个函数已经被废弃了,因为它在中止线程的过程中可能会破坏对象的一些状态。

二、Runnable接口的函数介绍

1. run():定义线程的任务。当线程启动后,run()函数将被执行。

三、示例代码

下面我们来看一些使用Thread类和Runnable接口的示例代码。

使用Thread类创建线程的示例代码:

class MyThread extends Thread {
    public void run() {
        for(int i=0; i<10; i++) {
            System.out.println("Thread: " + i);
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
}

public class Main {
    public static void main(String[] args) {
        MyThread t = new MyThread();
        t.start();
        System.out.println("Main: Thread started...");
    }
}

使用Runnable接口创建线程的示例代码:

class MyRunnable implements Runnable {
    public void run() {
        for(int i=0; i<10; i++) {
            System.out.println("Runnable: " + i);
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
}

public class Main {
    public static void main(String[] args) {
        Thread t = new Thread(new MyRunnable());
        t.start();
        System.out.println("Main: Thread started...");
    }
}

本文简单介绍了Thread类和Runnable接口的函数使用,包括了线程启动、停止、休眠、中断等操作,以及定义线程任务的run()函数。通过这些函数的使用,我们可以创建多线程程序,实现并发编程。