首页
文章
分类
标签
归档
友链
瞬间
公众号
小程序
关于
登录
菜单
首页
文章
分类
标签
归档
友链
瞬间
公众号
小程序
关于
青云博客
记录、分享
归档
2024 年 04 月
什么是不可变对象,对写并发有什么帮助
2024-04-27
Java
不可变对象(Immutable object)是一种一旦创建后其状态就不能被修改的对象。在Java中,不可变对象包括String、基本类型的包装类(如Integer、Double等)等。 不可变对象对写并发有如下帮助: 线程安全:不可变对象是线程安全的,因为它们不会被其他线程修改。因此,多个线程可以
线程池中线程复用原理
2024-04-27
Java
线程池的线程复用原理是指,将线程放入线程池中重复利用,而不是每执行一个任务就创建一个新线程。线程池会对线程进行封装,核心原理在于将线程的创建和管理与任务的执行分离。 线程池通过工作队列(WorkQueue)来存储待执行的任务,队列中可能有多个任务等待被执行。线程池中的线程数量是有限的,核心线程数通常
如何理解阻塞、非阻塞与同步、异步的区别?
2024-04-27
Java
同步与异步 同步与异步关注的是消息通信机制。 所谓同步,就是在发出一个调用时,在没有得到结果之前,该调用就不返回。但是一旦调用返回,就得到返回值了。换句话说,就是由调用者主动等待这个调用的结果。 而异步则是相反,调用在发出之后,这个调用就直接返回了,所以就没有返回结果。换句话说,当一个异步过程调用发
判断线程池任务执行完成的几种方式
2024-04-27
Java
Thread线程是否执行完成,我们可以调用join方法然后等待线程执行完成;那在使用线程池的时候,我们如何知道线程已经执行完成了?本文就带给大家五种判断的方式: isTerminated() 方式,在执行 shutdown() ,关闭线程池后,判断是否所有任务已经完成。 ThreadPoolExec
线程池的哪些参数影响性能?
2024-04-27
Java
线程池的性能受到以下参数的影响: 核心线程数(corePoolSize): 这是线程池中一直保持活动状态的最小线程数量。核心线程在空闲时不会被销毁,除非启用了 allowCoreThreadTimeOut 选项。核心线程数的设置直接影响了线程池的基本并发度。 最大线程数(maximumPoolSiz
如何优化线程池的性能?
2024-04-27
Java
要优化线程池的性能,需要根据实际情况进行参数配置。以下是一些优化建议: 根据应用场景和任务性质,合理设置核心线程数(corePoolSize)和最大线程数(maximumPoolSize)。如果任务主要是IO密集型的,核心线程数可以设置为CPU核心数的两倍左右,最大线程数可以设置为CPU核心数的四倍
线程池的底层工作原理
2024-04-27
Java
线程池是一种用于管理和重用线程的机制,其底层工作原理涉及线程的创建、调度、执行以及回收等关键过程。线程池的底层工作原理可以分为以下几个关键步骤: 线程池的创建: 在使用线程池之前,需要首先创建一个线程池。通常,线程池会根据配置参数(如核心线程数、最大线程数、队列类型等)来初始化线程池的基本属性。 任
ConcurrentHashMap和Hashtable的异同点
2024-04-27
Java
ConcurrentHashMap 和 Hashtable 都是用于在多线程环境中存储和操作键值对的数据结构,但它们在实现和性能方面存在一些重要的异同点: 相似点: 线程安全性:ConcurrentHashMap 和 Hashtable 都是线程安全的,可以在多个线程同时访问它们而不需要额外的同步措
JAVA 中怎样唤醒一个阻塞的线程
2024-04-27
Java
在Java中,可以使用Thread类的interrupt()方法来唤醒一个阻塞的线程。 首先,需要获取到该线程的对象,然后调用interrupt()方法。例如: Thread thread = new Thread(new Runnable() { @Override pu
ReentrantLock中的公平锁和非公平锁的底层实现
2024-04-27
Java
ReentrantLock是Java中提供的一种可重入锁,它支持两种锁的模式:公平锁和非公平锁。这两种锁模式的底层实现略有不同: 公平锁(Fair Lock): 公平锁的特点是按照请求锁的顺序来分配锁,即先到先得。在ReentrantLock中,通过构造函数可以选择创建一个公平锁。公平锁的底层实现使
上一页
1 / 49
2 / 49
3 / 49
4 / 49
5 / 49
6 / 49
7 / 49
8 / 49
9 / 49
10 / 49
11 / 49
12 / 49
13 / 49
14 / 49
15 / 49
16 / 49
17 / 49
18 / 49
19 / 49
20 / 49
21 / 49
22 / 49
23 / 49
24 / 49
25 / 49
26 / 49
27 / 49
28 / 49
29 / 49
30 / 49
31 / 49
32 / 49
33 / 49
34 / 49
35 / 49
36 / 49
37 / 49
38 / 49
39 / 49
40 / 49
41 / 49
42 / 49
43 / 49
44 / 49
45 / 49
46 / 49
47 / 49
48 / 49
49 / 49
下一页