线程共49篇 第4页
ThreadLocal的工作原理及源码解析-不念博客

ThreadLocal的工作原理及源码解析

ThreadLocal本质来说就是一个线程内部存储类,从而让多个线程只操作自己内部的值,从而实现线程数据隔离 每个线程内有一个 ThreadLocalMap 类型的成员变量,用来存储资源对象 ThreadLocalMap特...
不念的头像-不念博客不念2年前
424
ThreadLocal简介-不念博客

ThreadLocal简介

ThreadLocal是多线程中对于解决线程安全的一个操作类,它会为每个线程都分配一个独立的线程副本从而解决了变量并发访问冲突的问题。 ThreadLocal同时实现了线程内的资源共享。 案例 使用JDBC操...
不念的头像-不念博客不念2年前
292
线程的五种状态-不念博客

线程的五种状态

五种状态的说法来自于操作系统层面的划分 运行态:分到 cpu 时间,能真正执行线程内代码的 就绪态:有资格分到 cpu 时间,但还未轮到它的 阻塞态:没资格分到 cpu 时间的 涵盖了 java 状态中提...
不念的头像-不念博客不念2年前
214
线程的六种状态-不念博客

线程的六种状态

线程的状态可以参考JDK中的Thread类中的枚举State,存在六种状态 public enum State { //尚未启动的线程的线程状态 NEW, //可运行线程的线程状态 RUNNABLE, //线程阻塞等待监视器锁的线程状态 BL...
不念的头像-不念博客不念2年前
465
常见线程池类型与应用场景-不念博客

常见线程池类型与应用场景

在java.util.concurrent.Executors类中提供了大量创建连接池的静态方法,常见就有四种。 创建使用固定线程数的线程池 public static ExecutorService newFixedThreadPool(int nThreads) { retur...
不念的头像-不念博客不念2年前
425
JAVA线程池实现原理-不念博客

JAVA线程池实现原理

1、任务在提交的时候,首先判断核心线程数是否已满,如果没有满则直接添加到工作线程执行 2、如果核心线程数满了,则判断阻塞队列是否已满,如果没有满,当前任务存入阻塞队列 3、如果阻塞队列...
不念的头像-不念博客不念2年前
525
如何设计一个线程池-不念博客

如何设计一个线程池

设计一个线程池涉及到多个方面,包括线程的创建与销毁、任务的提交与执行、线程间的通信等。 以下不念给出的是一个简单的线程池设计思路: 线程池的结构:创建一个线程池类,其中包含一个任务队...
不念的头像-不念博客不念2年前
320
线程池的7大核心参数有哪些-不念博客

线程池的7大核心参数有哪些

七大参数 corePoolSize 核心线程数目 - 池中会保留的最多线程数 maximumPoolSize 最大线程数目 - 核心线程+救急线程的最大数目 keepAliveTime 生存时间 - 救急线程的生存时间,生存时间内没有新...
不念的头像-不念博客不念2年前
409