• HOME
  • SEARCH
  • TOPICS
  • DATA

  • Java25 使用 VirtualThreadSchedulerMXBean 查看虚拟线程调度器 ForkJoinPool 信息

    代码 import jdk.management.VirtualThreadSchedulerMXBean; import java.lang.management.ManagementFactor

    2025-12-29, Views: 18 , Topics: Java juc

  • Java25 中虚拟线程仍然会被 pin 住的 3 种情况

    JEP 491 在JEP 491中解决了虚拟线程在synchronized锁内遇到阻塞时不能从载体线程上卸载的问题后,还列举了3种还没解决的场景。 但这些场景发生的概率很小,且都是编码可控。 解析类

    2025-12-28, Views: 27 , Topics: Java juc

  • Java 使用 jcmd 命令查看虚拟线程堆栈信息

    Thread.dump_to_file jcmd中的Thread相关命令有Thread.print和Thread.dump_to_file(还有Thread.vthread相关命令)。 Thread

    2025-12-27, Views: 46 , Topics: Java juc jcmd

  • Java21 和 Java25 中获取虚拟线程挂载的平台线程

    反射 需在虚拟线程中调用invoke方法,返回的是ForkJoinWorkerThread。 通过ForkJoinWorkerThread还是获取对应的ForkJoinPool。 Class<Thr

    2025-12-26, Views: 54 , Topics: Java juc

  • Java 获取虚拟线程挂载的平台线程对应的 ForkJoinPool 实例

    反射获取 VirtualThread类中的私有静态final变量DEFAULT_SCHEDULER。 import java.lang.reflect.Field; import java.util

    2025-12-25, Views: 62 , Topics: Java juc

  • Java21 虚拟线程在 synchronized 代码块中被 pin 住问题复现

    测试代码 public class VirtualThreadSynchronizedPinnedDemo { // 共享锁对象:所有虚拟线程会竞争这把锁 private stati

    2025-12-24, Views: 66 , Topics: Java juc JFR

  • Java 虚拟线程调度器 ForkJoinPool 自定义参数设置

    主要参数 parallelism maxPoolSize minRunnable 参数设置 方式一 程序启动时设置。 System.setProperty("jdk.virtualThreadS

    2025-12-23, Views: 80 , Topics: Java juc

  • Java 虚拟线程 ForkJoinPool 工作线程运行情况

    程序初始运行时 当程序初始运行时,ForkJoinPool并不会创建工作线程。 PS \openjdk-25\bin> jcmd 14704 Thread.print 14704: 2025-10-

    2025-12-22, Views: 77 , Topics: Java juc

  • Java 为虚拟线程配置线程池(执行器)

    作用 为虚拟线程配置线程池(应叫做:执行器)的作用:使用执行器去开启虚拟线程,并用执行器管理虚拟线程的生命周期。 本质 为虚拟线程创建的ExecutorService,本质是虚拟线程创建器和任务提交

    2025-12-21, Views: 85 , Topics: Java juc

  • Java 虚拟线程启动流程及调度器源码解析

    启动虚拟线程方式 方式一 Thread.ofVirtual().start(() -> { }); 方式二 Runnable runnable = () -> {}; Thread.start

    2025-12-20, Views: 88 , Topics: Java juc

  • Java 虚拟线程是否为守护线程

    结论 Java中的虚拟线程默认是守护线程,且不能被修改为非守护线程。 守护线程:当JVM退出时,JVM不会等守护线程执行完毕才退出,等所有非守护线程执行完毕后JVM就会退出。 源码 Thread的i

    2025-12-19, Views: 96 , Topics: Java juc

  • Spring Boot Callable 异步接口服务端超时后是否会继续执行业务逻辑

    Controller 代码 使用了Callable作为返回值,Spring Boot会当作异步接口来处理。 @GetMapping("/timeout") pu

    2023-07-18, Views: 1840 , Topics: Spring Boot juc

  • Java 并发编程之线程池大小

    说明 关于线程池大小的设置,有很多文章和经验公式,给出的答案不尽相同。 Java并发编程实战 《Java并发编程实战》:第8章 - 线程池的使用。第141页。

    2021-11-15, Views: 2643 , Topics: Java juc 面试

  • Java 并发编程之 ThreadPoolExecutor 线程池源码解析

    构造函数 注意:只有在阻塞队列满的前提下才会创建非核心线程。 ThreadPoolExecutor executor = new ThreadPoolExecu

    2021-11-11, Views: 2961 , Topics: Java juc 面试

  • Java 并发编程之自定义线程池

    代码 核心线程 阻塞队列 拒绝策略 未实现线程maxSize功能 public class CustomThreadPool { public s

    2021-11-09, Views: 3062 , Topics: Java juc

  • Java 并发编程之 ConcurrentLinkedQueue 非阻塞队列

    介绍 ConcurrentLinkedQueue没有LinkedBlockingQueue类似的put和take等阻塞方法,所以是一个非阻塞的队列。 但和Lin

    2021-11-08, Views: 3083 , Topics: Java juc

  • Java 并发编程之 LinkedBlockingQueue 阻塞队列

    介绍 LinkedBlockingQueue的put和take为阻塞方法。 put:队列满时等待放入。 take:队列空时等待获取。 初始化 初始化链表。头节点

    2021-11-05, Views: 2822 , Topics: Java juc

  • Java 并发编程之 ConcurrentSkipListSet

    介绍 线程安全的排序集合。 原理 ConcurrentSkipListSet底层是使用ConcurrentSkipListMap实现。 public Concu

    2021-11-04, Views: 2396 , Topics: Java juc

  • Java 并发编程之 ConcurrentSkipListMap

    介绍 线程安全的排序集合。 跳跃列表 Head nodes Index nodes +-+ right +-+

    2021-11-03, Views: 2872 , Topics: Java juc

  • Java 并发编程之 CopyOnWriteArraySet

    介绍 线程安全的,适合并发的集合类,对比HashSet。 原理 底层实际就是CopyOnWriteArrayList。 具体可参考前一篇文章:Java 并发编程

    2021-11-02, Views: 2554 , Topics: Java juc

  • Prev
  • 1
  • 2
  • 3
  • 4
  • Next Last

©2025 沪ICP备18012661号-1 阿里云

Messages Sitemap GitHub