# Synchronized 和 ReentrantLock 有什么区别?
7 min read
Synchronized 是 Java 内置的、基于 JVM 实现的隐式锁机制,而 ReentrantLock 是 JDK 提供的、基于 API 实现的显式锁机制,两者都实现了可重入的互斥锁功能。
Synchronized 是 Java 内置的、基于 JVM 实现的隐式锁机制,而 ReentrantLock 是 JDK 提供的、基于 API 实现的显式锁机制,两者都实现了可重入的互斥锁功能。
SpringBoot 自动配置是通过条件化配置机制,在应用启动时基于类路径、已存在的Bean、配置文件等条件自动装配所需的组件,从而减少手动配置的复杂性。
TCP 粘包和拆包是指在使用TCP协议进行数据传输时,由于TCP是面向字节流的、无消息边界的传输协议,导致接收方无法正确区分发送方原始数据包边界,从而出现多个数据包被粘在一起接收,或一个数据包被拆分成多次接收的现象。
TCP 滑动窗口是一种流量控制与拥塞控制机制,它通过动态调整发送方与接收方之间的数据窗口大小,在保证可靠传输的前提下,最大限度地提升网络吞吐量,并避免因发送过快而导致的数据包丢失或网络拥塞。
TCP 是一种面向连接的、可靠的、基于字节流的传输层通信协议;UDP 是一种无连接的、不可靠的、基于数据报的传输层通信协议。
编译执行是将源代码一次性翻译成目标机器码后执行,而解释执行是逐行读取源代码并实时翻译执行;JVM 采用“解释执行 + 即时编译(JIT)”的混合模式。