摘要:
锁的名词 公平锁/非公平锁 可重入锁 独享锁/共享锁 互斥锁/读写锁 乐观锁/悲观锁 分段锁 偏向锁/轻量级锁/重量级锁 自旋锁 这些分类并不是全是指锁的状态,有的指锁的特性,有的指锁的设计 1. 公平锁/非公平锁 公平锁是指多个线程按照申请锁的顺序来获取锁 非公平锁是指多个线程获取锁的顺序并不是按 阅读全文
posted @ 2025-05-16 21:23
kuki'
阅读(48)
评论(0)
推荐(0)
摘要:
在Java多线程中,run方法和start方法的区别在于 run方法是线程的执行体,包含线程要执行的代码,直接调用run方法时,它会在当前线程中执行,而不是创建新的线程。 start方法用于启动一个新的线程,并在新线程中执行run方法的代码。 调用start方法会为线程分配系统资源,并将线程置于就绪 阅读全文
posted @ 2025-05-16 20:05
kuki'
阅读(37)
评论(0)
推荐(0)
摘要:
进程时系统运行程序的基本单位。 在Java中,当我们启动main函数,其实就是启动了一个JVM的进程,而main函数所在的线程就是这个进程中的一个线程,也称主线程。 线程是进程中的一个执行单元 一个进程可以包含多个线程。 这些线程共享进程的内存空间和系统资源。 线程是操作系统调度的最小单位,它负责执 阅读全文
posted @ 2025-05-16 19:41
kuki'
阅读(12)
评论(0)
推荐(0)
摘要:
1. 线程安全性 HashMap不是线程安全的 ConcurrentHashMap是线程安全的, 2. 同步机制 HashMap在实现上没有明确的同步机制,需要在外部进行同步,例如使用Collections.synchronizedMap方法 ConcurrentHashMap内部使用了一种更细粒度 阅读全文
posted @ 2025-05-16 17:32
kuki'
阅读(34)
评论(0)
推荐(0)
摘要:
如果不需要线程安全性,更关注性能,通常会选择使用HashMap。 如果需要线程安全性,考虑使用HashTable,或者使用ConcurrentHashMap HashMap和HashTable的区别 1. 同步 HashTable是同步的,即它的方法是线程安全的。 通过在每个方法上添加同步关键字实现 阅读全文
posted @ 2025-05-16 17:03
kuki'
阅读(41)
评论(0)
推荐(0)
摘要:
ConcurrentHashMap 在JDK1.8中使用数组+ 链表 + 红黑树的方式实现。。 它通过CAS或者synchronized来保证线程安全的, 缩小了锁的粒度,查询性能也更高。 阅读全文
posted @ 2025-05-16 16:22
kuki'
阅读(61)
评论(0)
推荐(0)
摘要:
为了实现线程安全的HashMap,有以下几种方式: 使用Collections.synchronizedMap()方法,synchronized是同步的意思。 可以通过Collections.synchronizedMap()方法创建一个线程安全的HashMap 该方法返回一个同步的Map包装器,使 阅读全文
posted @ 2025-05-16 12:29
kuki'
阅读(56)
评论(0)
推荐(0)
摘要:
因为它的操作不是原子的, 即在多个线程同时进行读写操作时,可能会导致数据不一致性或抛出异常。 并发修改: 当一个线程进行写操作(插入、删除等)时, 另一个线程进行读操作,可能会导致读取到不一致的数据, 甚至抛出Concurrent ModificationException异常。 非原子性操作:Ha 阅读全文
posted @ 2025-05-16 12:20
kuki'
阅读(29)
评论(0)
推荐(0)
摘要:
我们只看JDK1.8的扩容 生成新数组 遍历老数组中的每个位置的链表或红黑树 如果是链表,则直接将链表中的每个元素重新计算下标,添加到新数组中去。 如果是红黑树,则先遍历红黑树,计算出红黑树中的每个元素对应在新数组中的下标位置。 统计每个下标位置的元素个数; 若该位置下的元素个数超过了8,则生成一个 阅读全文
posted @ 2025-05-16 12:06
kuki'
阅读(19)
评论(0)
推荐(0)
摘要:
判断数组是否为空 为空,进行初始化 不为空,计算key的hash值, 通过(n-1)&hash 计算应当存放在数组中的下标index。 查看table[index]是否存在数据, 没有数据,就构造一个Node节点存放在table[index]中。 存在数据,说明发生了hash冲突(存在两个节点key 阅读全文
posted @ 2025-05-16 11:56
kuki'
阅读(7)
评论(0)
推荐(0)

浙公网安备 33010602011771号