首页
友情链接
智能助手
智能助手
归档
瞬间
小程序&公众号
小程序
公众号
Login
Menu
首页
友情链接
智能助手
智能助手
归档
瞬间
小程序&公众号
小程序
公众号
青云博客
记录、分享
Archives
2024 / 04
如何理解阻塞、非阻塞与同步、异步的区别?
2024-04-22
Java
#java
同步与异步 同步与异步关注的是消息通信机制。 所谓同步
线程池的底层工作原理
2024-04-22
Java
#java
线程池是一种用于管理和重用线程的机制,其底层工作原理涉及线程的创建、调度、执行以及回收等关键过程。线程池的底层工作原理可以分为以下几个关键步骤: 线程池的创建: 在使用线程池之前,需要首先创建一个线程池。通常,线程池会根据配置参数(如核心线程数、最大线程数、队列类型等)来初始化线程池的基本属性。 任
线程池中线程复用原理
2024-04-22
Java
#java
线程池的线程复用原理是指,将线程放入线程池中重复利用,而不是每执行一个任务就创建一个新线程。线程池会对线程进行封装,核心原理在于将线程的创建和管理与任务的执行分离。 线程池通过工作队列(WorkQueue)来存储待执行的任务,队列中可能有多个任务等待被执行。线程池中的线程数量是有限的,核心线程数通常
线程池的哪些参数影响性能
2024-04-22
Java
#java
线程池的性能受到以下参数的影响: 核心线程数(corePoolSize): 这是线程池中一直保持活动状态的最小线程数量。核心线程在空闲时不会被销毁,除非启用了 allowCoreThreadTimeOut 选项。核心线程数的设置直接影响了线程池的
JDK7与JDK8之间HashMap的区别?
2024-04-22
Java
#java
JDK8中新增了红黑树,JDK8是通过数组+链表+红黑树来实现的; JDK7中链表的插入是用的头插法,而JDK8中则改为了尾插法; JDK8中的因为使用了红黑树保证了插入和查询了效率,所以实际上JDK8中的Hash算法实现的复杂度降低了; JDK8中数组扩容的条件也发了变化,只会判断是否当前元素个数
什么是线程调度器和时间分片
2024-04-22
Java
#java
线程调度器(Thread Scheduler)是操作系统内核中的一个重要组件,负责分配并管理处理器时间片,控制多线程程序的执行顺序。当有多个线程同时运行时,线程调度器会在这些线程之间进行切换,使得每个线程都有机会使用 CPU 资源,并实现任务的并发执行。 时间分片(Time Slicing)是指将可
JAVA 中怎样唤醒一个阻塞的线程
2024-04-22
Java
#java
在Java中,可以使用Thread类的interrupt()方法来唤醒一个阻塞的线程。 首先,需要获取到该线程的对象,然后调用interrupt()方法。例如: java复制代码 Thread thread = new Thread(new Runnable() { @Overri
说下你对volatile的理解
2024-04-22
Java
#java
volatile是Java虚拟机提供的轻量级的同步机制,具有以下特点: 保证可见性:volatile保证了多个线程对共享变量的操作是可见的。当一个线程修改了共享变量的值,其他线程会立即看到这个改变。 禁止指令重排:volatile通过禁止指令重排来保证顺序性。在多线程环境下,为了提高程序执行效率,编
JAVA 中有几种方法可以实现一个线程
2024-04-22
Java
#java
在Java中,有多种方法可以实现一个线程,以下是常用的几种方式: 继承Thread类: 创建一个继承自Thread类的子类,然后重写子类的run方法,将线程的任务逻辑放在
ReentrantLock中的公平锁和非公平锁的底层实现
2024-04-22
Java
#java
ReentrantLock是Java中提供的一种可重入锁,它支持两种锁的模式:公平锁和非公平锁。这两种锁模式的底层实现略有不同: 公平锁(Fair Lock): 公平锁的特点是按照请求锁的顺序来分配锁,即先到先得。在ReentrantLock中,通过构造函数可以选择创建一个公平锁。公平锁的底层实现使
Previous
1 / 53
2 / 53
3 / 53
4 / 53
5 / 53
6 / 53
7 / 53
8 / 53
9 / 53
10 / 53
11 / 53
12 / 53
13 / 53
14 / 53
15 / 53
16 / 53
17 / 53
18 / 53
19 / 53
20 / 53
21 / 53
22 / 53
23 / 53
24 / 53
25 / 53
26 / 53
27 / 53
28 / 53
29 / 53
30 / 53
31 / 53
32 / 53
33 / 53
34 / 53
35 / 53
36 / 53
37 / 53
38 / 53
39 / 53
40 / 53
41 / 53
42 / 53
43 / 53
44 / 53
45 / 53
46 / 53
47 / 53
48 / 53
49 / 53
50 / 53
51 / 53
52 / 53
53 / 53
Next