Java 并发编程共59篇

Java 并发编程是高性能应用开发的重要环节。Java 并发面试题的考察重点包括线程的创建与管理、线程池的使用、同步机制(如锁、volatile 关键字)、原子类、并发容器、AQS 框架、CAS 原理、线程安全问题的排查以及高并发场景下的性能优化。

面试题:如何在 Java 中控制多个线程的执行顺序?

在 Java 中,线程的执行顺序是由操作系统的线程调度器决定的,通常情况下是无法直接控制的。然而,在某些场景下,我们需要确保多个线程按照特定的顺序执行。以下是几种常见的控制线程执行顺序的...
程序百科的头像-程序百科程序百科1个月前
02715

面试题:什么是 Java 的 ForkJoinPool?

ForkJoinPool 是 Java 7 引入的一个线程池实现,位于 java.util.concurrent 包中。它是专门为支持 分治算法(Divide-and-Conquer)和 并行任务 而设计的。ForkJo...
程序百科的头像-程序百科程序百科1个月前
04714

面试题:什么是 Java 的 CompletableFuture?

CompletableFuture 是 Java 8 引入的一个类,位于 java.util.concurrent 包中。它是 Future 接口的一个实现,提供了更强大的异步编程能力。CompletableFuture 不仅支...
程序百科的头像-程序百科程序百科1个月前
0439

面试题:什么是 Java 的 StampedLock?

StampedLock 是 Java 8 引入的一种新的锁机制,位于 java.util.concurrent.locks 包中。它提供了三种模式的锁控制:写锁、悲观读锁和乐观读锁。StampedLock 的设计旨在提供更高的并发性能,尤其...
程序百科的头像-程序百科程序百科1个月前
0319

面试题:什么是 Java 的 CountDownLatch?

CountDownLatch 是 Java 并发包 (java.util.concurrent) 中的一个同步工具类,用于让一个或多个线程等待其他线程完成操作。它通过一个计数器来实现线程的等待和通知机制,适用于主线程等待...
程序百科的头像-程序百科程序百科1个月前
03813

面试题:什么是 Java 的 CyclicBarrier?

CyclicBarrier 是 Java 并发包 (java.util.concurrent) 中的一个同步工具类,用于让一组线程互相等待,直到所有线程都到达某个屏障点(Barrier Point)后再继续执行。它可以用于多线程任务...
程序百科的头像-程序百科程序百科1个月前
0287

面试题:什么是 Java 的 Semaphore?

Semaphore 是 Java 并发包 (java.util.concurrent) 中的一个同步工具类,用于控制同时访问某个资源的线程数量。它通过维护一组许可证(permits)来实现资源的访问控制,适用于限流、资源池...
程序百科的头像-程序百科程序百科1个月前
0279

面试题:你使用过哪些 Java 并发工具类?

Java 提供了丰富的并发工具类,位于 java.util.concurrent 包中,用于简化多线程编程并提高性能。以下是我使用过的一些常见 Java 并发工具类及其应用场景: 1. ExecutorService&...
程序百科的头像-程序百科程序百科1个月前
02713

面试题:你了解时间轮(Time Wheel)吗?有哪些应用场景?

时间轮(Time Wheel)是一种高效的定时任务调度算法,常用于实现延迟任务或周期性任务的调度。它的核心思想是通过一个循环数组(类似于时钟的表盘)来表示时间,每个槽(slot)代表一个时间间隔...
程序百科的头像-程序百科程序百科1个月前
03010

面试题:什么是 Java 的 Timer?

Java 的 Timer 是一个用于调度任务在指定时间或按固定间隔执行的工具类。它位于 java.util 包中,通常用于安排一次性或重复性的任务。 主要特点: 单线程执行:Timer 使用单个后台线程来执行所...
程序百科的头像-程序百科程序百科1个月前
0488