品易云推流 关闭
文章详情页
文章 > java基础 > java多线程原理

java多线程原理

Java多线程

头像

小妮浅浅

2021-04-20 09:47:082501浏览 · 0收藏 · 0评论

本教程操作环境:windows7系统、java10版,DELL G3电脑。

1、多线程中的线程池原理

(1)判断线程池中的核心线程是否都在执行任务,如果没有(核心线程是闲置的,或者核心线程是无用的),创建一个新的工作线程来执行任务。如果核心线程都在执行任务,则进入下一个过程。

2)线程池判断工作队列是否已满。如果工作队列没有满,将新提交的任务存储在这个工作队列中。如果工作队列满了,进入下一个过程。

(3)判断线程池中的线程是否处理工作状态,如果没有,创建一个新的工作线程来执行任务。如果满了,就交给饱和策略来处理这个任务。

2、多线程的实例

public class Test implements Runnable {
    @Override
    public void run() {
        try {
            Thread.sleep(10);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
 
    static ExecutorService service = newFixedThreadPool(3);
 
    public static void main(String[] args) {
        for (int i=0;i<100;i++) {
            service.execute(new Test());
        }
 
        service.shutdown();
    }
}

以上就是java多线程的原理分析,在多线程中主要用到的是线程池的使用,需要我们对其运行的原理有所理解,才能更好的熟练使用多线程。更多编程基础知识学习:python学习网

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图