本教程操作环境: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学习网