线程的实现

简介: 写一个类,继承Thread类,覆盖Thread类中继承来的run()方法,这样就写好了自定义的线程类。

写一个类,继承Thread类,覆盖Thread类中继承来的run()方法,这样就写好了自定义的线程类。

继承java.lang.Thread类:

class MyThread extends Thread{

    public void run(){        
   //覆盖run(),线程体方法,自身其实就是普通的方法

        .......

    }

}

启动线程:

public class TestThread{

    public static void main(){

        Thread t1=new Mythread();

        T1.start();        
       //调用start()来启动线程,线程启动方法,向线程调度器说明当前线程已经准备好了,是一种可运行状态

    }

}

写一个类,实现Runable接口,实现其中的run()方法。这种方法写好的类的对象需要作为线程类创建对象时构造方法的参数。

实现java.lang.Runnable接口:

Class MyThread  implements Runnable{

    public void run(){

    }

}

启动线程:

public class TestThread{

    public static void main(){

        Runnable myThread = new MyThread();

        Thread t = new Thread(myThread);

        t.start();

    }

}

从java5开始,还有如下一些线程池创建多线程的方式:

ExecutorService pool = Executors.newFixedThreadPool(3)

for(int i=0;i<10;i++){

pool.execute(new Runable(){
public void run(){

}

});

}

Executors.newCachedThreadPool().execute(new Runable(){
public void run(){

}

});

Executors.newSingleThreadExecutor().execute(new Runable(){
public void run(){

}

});

相关文章
|
8月前
|
Java Linux API
线程的认识
线程的认识
|
4月前
线程18
线程18
39 4
|
4月前
|
安全 Java
线程(二)
线程(二)
|
7月前
|
NoSQL Java 应用服务中间件
线程不够用怎么办?
### 并发编程挑战与解决方案概览 - 多线程导致线程爆炸,浪费CPU及可能导致JVM崩溃。线程池缓解问题,但仍有阻塞IO的效率低下。 - 非阻塞IO(如servlet3.1/Tomcat)和事件驱动(Reactive/Future)减少线程使用,但学习曲线陡峭。 - 轻量级线程如Netty、Spring Flux和虚拟线程(Java Loom)提升性能,但普及尚需时日。Java21引入虚拟线程,有望成未来性能关键。
235 10
|
Java C语言 Python
线程那些事
线程那些事
54 0
|
8月前
|
存储 安全 Java
C++线程浅谈
C++线程浅谈
|
算法 NoSQL Java
02.关于线程你必须知道的8个问题(上)
大家好,我是王有志,欢迎来到《Java面试都问啥?》。 今天我们来一起看看在面试中,关于线程各大公司大都喜欢问哪些问题。
110 1
02.关于线程你必须知道的8个问题(上)
|
Java
线程理解
个人学习理解
84 0
|
传感器 存储 自动驾驶
(6)线程
(6)线程
119 0

热门文章

最新文章