LockSupport与线程阻塞唤醒 1. park /unpark 工作机制 LockSupport.park() 阻塞当前线程,直到被 unpark 或线程中断。 LockSupport.unpark(Thread t) 给指定线程发放一个「许可」,让它从 park 中返回。 核心机制:许可机制(类似 0/1 信号量)LockSupport.park() 尝试拿走这张令牌 当前令牌 = 1:拿 2026-04-15 java并发 #java并发
CAS与无锁编程 1. CAS 原理:Compare And SwapCAS = 比较并交换,是一条CPU 原子指令(CMPXCHG),流程: 先比较:内存当前值 V == 预期旧值 A? 若相等:把内存值 V 改为新值 B 若不等:说明被别人改过,本次失败,可重试 伪代码逻辑(原子执行): 1234567boolean cas(V, A, B) { if (V = 2026-04-15 java并发 #java并发
线程安全与synchronized 一、线程安全基础:竞态条件 & 临界区1. 竞态条件(Race Condition)多个线程同时操作、修改同一个共享变量,执行结果依赖线程执行的先后顺序,最终导致结果错误。 根本原因:读 - 改 - 写三步不是原子操作。 典型例子:i++ 多线程下计数错误。 2. 临界区(Critical Section)会发生线程安全问题的代码块,就是临界区。 多个线程同时进入临界区 → 线程不安 2026-04-15 java并发 #java并发
java内存模型JMM Java 内存模型(JMM)Java 内存模型(JMM)是一套规范,用来屏蔽不同硬件和操作系统的内存访问差异,让 Java 程序在各种平台下都能实现一致的并发效果。它的核心目标是解决多线程下的原子性、可见性、有序性问题,定义了线程和主内存之间的抽象关系。 一、JMM 核心:三大特性JMM 围绕原子性、可见性、有序性三大特性设计,这是多线程并发安全的基础。 1. 原子性(Atomicity)定义:一 2026-04-15 java并发 #java并发
java线程基础 创建线程的方式1. 继承 Thread 类 自定义类继承 Thread,重写 run() 方法 创建实例,调用 start() 启动线程 缺点:Java 单继承,无法再继承其他类 12345678910111213class MyThread extends Thread { @Override public void run() { System. 2026-04-15 java并发 #java并发
python的uv工具 概述uv 是由 Astral 团队(也是高速 Python Linter 工具 Ruff 的开发者)推出的一款新一代 Python 项目管理工具。 它基于 Rust 语言编写,旨在解决传统 Python 工具链(如 pip、virtualenv、poetry、pyenv、pipx 等)速度慢、功能分散的问题。uv 被设计为“Python 界的 Cargo”(Rust 的包管理器),提供了一个极速、 2026-02-27 其他工具 #uv
成长路径 从功能实现和系统设计的角度来看,Java 程序员的成长路径通常是从“实现单一功能”到“构建复杂模块”,再到“设计分布式系统”和“解决架构级难题”的过程。 结合 2025-2026 年的技术趋势(云原生、AI 集成、高并发),以下是初级、中级、高级 Java 程序员在功能层面应掌握的核心能力对照表: 1. 初级 Java 程序员 (Junior)核心目标:能在指导下完成具体的业务功能点(CRUD) 2026-02-27 书 #书
如何画架构图 一、业务架构图、应用架构图、数据架构图、技术架构图 业务架构:业务要干什么 → 给老板、产品、业务方看 应用架构:系统怎么分工 → 给产品、架构师、项目经理看 数据架构:数据怎么存、怎么流 → 给DBA、数据开发、架构师看 技术架构:用什么技术栈、怎么部署 → 给研发、运维、测试看 二、每张图:面向谁 + 画什么 + 方法论1. 业务架构(Business Architecture)给谁看? 2026-02-13 系统设计 #系统设计
学习完整项目 概述本文档是针对学习培训机构的项目、网上完整项目、公司内接手项目一步一步的了解并掌握这个项目的手册。 技能培训机构的项目课中一般会掺杂一些你之前已经会的东西,或者我认为这个功能、思想、技能不应该出现在项目的学习过程的,我就放这里了。 Maven聚合工程搭建maven的一些配置呀、本地仓库、远程仓库、java 版本、.mvn、gitmodules 提效工具123代码工具:lombok、mybatis 2026-02-13 系统设计 #系统设计
joyagent-jdgenie 地址 JoyAgent 官方平台:https://joyagent.jd.com/ JoyAgent - JDGenie 产品页:https://joyagent-genie.jdcloud.com/ 源码地址:https://github.com/jd-opensource/joyagent-jdgenie.git 本机启动12345678环境准备- jdk17- python3.11- py 2026-02-10 AI #AI