2026/08/05 发布时间:2026/8/6 3:00:19 Synchronized的实现原理Synchronized底层是基于JVM的监视器锁在被Synchronized修饰的代码块中在字节码层面会在代码块前加入monitorenter指令在代码块后面会加上monitorexit指令被修饰的代码块同时只能允许一个线程进入执行其他未获取到锁的线程会在外部阻塞等待在Java8之后Synchronized锁进行了优化并不是一进来就是重量级锁而是有一个所升级的过程首先当没有线程进入时是一个无锁的状态有一个线程进入时就会升级成偏向锁当有另一个线程与之竞争时就会升级成轻量级锁此时这个未获取到锁的线程并不会直接阻塞而是通过自旋挂起等待另一个线程释放锁。如果等待锁的线程自旋时间过长或者此时有多个线程同时竞争锁此时synchronized就会升级成重量级锁所有未获取到锁的线程都会进入entryList阻塞等待。主动放弃锁的线程进入waitSet队列Synchronized和ReentrantLockSynchronized和ReentrantLock都是互斥锁不同的是Synchronized是基于JVM层面的监视器锁实现的而ReentrantLock是基于CAS和AQS实现的。Synchronized锁适用于一些简单的场景因为Synchronized加锁和释放锁都比较简单只要进入代码块就会自动加锁退出代码块就会自动释放锁。而ReentrantLock需要手动加锁和释放锁通常会配合try-finally块保证代码执行完毕后一定会释放锁除此之外ReentrantLock还可以实现可中断等待锁的线程可以被中断而不是像等待Synchronized锁的线程那样一直被阻塞。并且ReentrantLock可以实现尝试获取锁在一定时间内如果没有获取到锁就直接取消不再获取锁。ReentrantLock还可以实现公平锁机制保证每个线程排队获取锁而不是通过竞争来获取锁防止了线程饥饿ReentrantLock可以创建多个Condition对象实现精准唤醒而synchronized只能关联一个Object的wait/notify无法精确唤醒基于AQS实现的Java类基于AQS实现的Java类分两大类锁和同步器锁即实现了JUC包下的Lock接口的类例如ReentrantLockReadWriteLock读写锁读锁是共享锁写锁是排他锁读锁可以多线程同时进入读数据而写锁只能一个线程进入修改数据。适用于读多写少的场景同步器类通常不实现Lock接口Semaphore共享变量通过一个计数器来控制访问资源的线程所有需要访问资源的线程都需要通过tryAcquire获取一个许可然后计数器减一只有获取到许可的线程才能访问资源当释放资源时通过release方法释放资源计数器加一CountDownLatch允许一个或多个线程等待其他线程执行完毕。当有线程执行代码完毕计数器减1知道计时器的值为0时等待的线程就会被唤醒。AQS的state被拆分为高16位读锁计数和低16位写锁计数CyclicBarrier底层是基于ReentrantLock和Condition实现的。允许一组线程互相等待同样是通过计数器来判断每当有一个线程执行到屏障时计数器就会减一直到所有线程都执行到屏障处然后在继续执行后续的方法线程池的参数corePoolSize核心线程数是线程池执行任务的主力军maxPoolSize最大线程数等于核心线程数加辅助线程数blockingQueue阻塞队列当核心线程数满时还有任务进入任务就会先进入到阻塞队列中keepAliveTime线程的存活时间当超过这个时间辅助线程没有执行任务辅助线程就会被销毁timeUnit时间单位ThreadFactory线程工厂通常可以用于定义这组线程池的名字RejectedExecutionHandler拒绝策略当阻塞队列满了并且辅助线程也全都在执行任务此时如果还有任务进入就会执行拒绝策略。拒绝策略通常有以下几类直接抛弃不执行任务交给提交任务的线程处理抛出异常不进行任何处理自定义拒绝策略当核心线程都在执行任务时再进来的任务会先进入阻塞队列如果阻塞队列也满了还有任务进来就会开始创建辅助线程来执行任务线程/进程之间该如何通信线程之间的通信通常是依靠共享变量来实现或者waitnotify等方法。JUC中通常还可以利用LockSupport的park和unpark来实现进程之间的通信通常需要通过一个管道pipeline来实现也可以利用消息队列或者通过http请求等实现 相关新闻 大语言模型长文本总结:分层处理框架与工程实践指南 1. 项目概述:当LLM遇上长文本,总结的挑战与机遇最近在折腾几个文档分析项目,发现一个绕不开的坎:怎么让大语言模型(LLM)高效、准确地处理动辄几万甚至几十万字的超长文本,并给出一个靠谱的总结&… 2026/8/6 3:00:19 C++单元测试实战:GoogleTest环境搭建与核心用法详解 1. 项目概述如果你正在写C代码,尤其是规模稍大一点的项目,那么单元测试绝对不是你“有空再做”的选项,而是保证代码质量、防止回归错误的生命线。我见过太多项目,初期为了赶进度跳过测试,后期一个简单的功能改动都可能… 2026/8/6 3:00:19 AI智能体记忆系统架构与纵深防御实践指南 1. 项目概述:为什么我们需要关注Agent的Memory与纵深防御?最近在跟几个做企业级AI应用落地的朋友聊天,大家不约而同地提到了同一个痛点:Agent跑着跑着就“失忆”了,或者干脆因为内存问题直接崩溃。这让我想起了之前处理… 2026/8/6 3:00:19 最新新闻 LangChain集成百度千帆SDK:从零构建可落地的LLM应用实战指南 1. 从想法到产品:为什么LLM应用落地这么难? 最近和不少同行聊,发现一个挺普遍的现象:大家都能用ChatGPT的网页版玩出花来,但一旦想把大模型能力集成到自己的业务系统里,或者想做一个能稳定对外服务的AI应用… 2026/8/6 4:00:26 C语言基础:指针(三) 字符指针常见错误#include <stdio.h> int main(int argc, char **argv) {//char *p "hello"; // hello 在内存中,只用一份,只能读取,不能修改char p[] "hello"; // char [] 开辟空间,会把hello字… 2026/8/6 4:00:26 从正交到共轭正交:酉空间、酉矩阵与SVD的数学原理与应用 1. 从“正交”到“共轭正交”:为什么需要酉空间? 在工程和物理的很多领域,我们早已习惯了欧几里得空间(简称欧氏空间)里的那一套几何直觉。比如,两个向量垂直(正交),意味… 2026/8/6 4:00:26 不会写量化代码?把 QuantDash 数据源告诉 Codex,让它帮你写策略 过去学量化,路径通常很长: 先学 Python,再学 pandas,再学金融市场基础,再学技术指标,再学回测,再学调参,再学实盘接口。每一步都没错,但对普通人来说,门槛确… 2026/8/6 4:00:26 Windows VC++运行库终极解决方案:从原理到一键部署脚本 1. 项目概述:为什么我们需要一个“终极解决方案”?如果你在Windows上安装过游戏、专业软件,或者尝试运行一些从GitHub下载的开源工具,那么下面这个弹窗对你来说一定不陌生:“无法启动此程序,因为计算机中丢… 2026/8/6 4:00:26 从开环到闭环:基于PID算法与灰度传感器的智能小车巡线控制实践 1. 项目概述:从“开环瞎跑”到“闭环精准”的进化做底盘小车巡线,估计是很多朋友入坑嵌入式或机器人控制时绕不开的一个经典项目。我最早玩这个的时候,用的还是最简单的“两路灰度传感器逻辑判断”方案:左边传感器看到黑线就让右轮… 2026/8/6 3:55:26 日新闻 深入解析LimboAI C++内核:架构设计与性能优化实战 1. 项目概述:为什么我们需要深入LimboAI的C内核?如果你是一名使用Godot引擎的游戏开发者,尤其是对AI行为逻辑有较高要求的项目,那么LimboAI这个名字你大概率不会陌生。它作为Godot 4生态中一个备受瞩目的行为树与状态机插件&#… 2026/8/6 0:00:05 Unity 2D游戏敌人AI系统:基于PlayMaker状态机与2D Toolkit的实战开发 1. 项目概述与核心思路大家好,我是老张,一个在游戏开发一线摸爬滚打了十多年的老码农。今天咱们接着聊《空洞骑士》风格2D动作游戏的Demo制作。上一期我们搭好了基础框架,处理了角色移动和碰撞,这一期,我们要让游戏世界… 2026/8/6 0:00:05 被动防火门市场前景发展趋势 被动防火门依靠材质结构、密闭构造阻隔烟火蔓延,无需电控启动,是建筑被动消防系统核心构件,行业依托新规管控、城市更新、工业安全升级迎来稳定扩容,整体朝着合规化、专项化、低碳化、智能化方向发展。现阶段 GB12955‑2024 新版国… 2026/8/6 0:00:05 周新闻 ncmdumpGUI:一键解锁网易云音乐ncm文件的终极解决方案 ncmdumpGUI:一键解锁网易云音乐ncm文件的终极解决方案 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾经从网易云音乐下载了心爱的歌曲&am… 2026/8/5 5:03:56 分布式配置中心选型实战:Nacos与Consul在创业场景下的对比 分布式配置中心选型实战:Nacos与Consul在创业场景下的对比工程导读:本文深入讨论 分布式配置中心选型实战:Nacos与Consul在创业场景下的对比 在生产工程实践中的核心落地方案。基于 分布式架构与微服务设计 视角,剖析实际痛点、架… 2026/8/5 7:15:00 MoneyPrinterPlus实战指南:AI视频批量生成与自动化发布完整解决方案 MoneyPrinterPlus实战指南:AI视频批量生成与自动化发布完整解决方案 【免费下载链接】MoneyPrinterPlus AI一键批量生成各类短视频,自动批量混剪短视频,自动把视频发布到抖音,快手,小红书,视频号上,赚钱从来没有这么容易过! 支持本地语音模型chatTTS,fasterwhisper,… 2026/8/5 6:23:51 月新闻 【YOLOv11模型改进系列】08 数据增强的终极形态:用AutoAugment让YOLOv11自己学会“什么数据最有用” 08 数据增强的终极形态:用AutoAugment让YOLOv11自己学会“什么数据最有用” 老伙计,咖啡准备好了吗?上篇我们聊了Mosaic+MixUp的“混乱美学”,你肯定已经体会到,手动调数据增强策略就像给模型当保姆——每换一个数据集就要重新试一遍参数。 上周有个做工业质检的朋友找我… 2026/8/5 7:15:27 AI 智能电动窗帘电机高集成、低功耗 MOSFET 精准选型方案 随着 AIoT 与智能家居深度融合,智能电动窗帘电机对功率 MOSFET 提出新要求:微型化、高效率、逻辑电平驱动及静音运行。微碧半导体(VBsemi)基于先进的 Trench 和 SGT 工艺,为您提供覆盖 H桥驱动、电源管理及电机控制的完… 2026/8/4 8:25:47 AI 智能电动窗帘电机智能功率 MOSFET 完整选型方案 随着 AI 技术在智能家居中的普及(如语音控制、光线感应、场景联动),电动窗帘电机对功率 MOSFET 提出更高要求:高效率、低噪音、高集成度。微碧半导体(VBsemi)基于 SGT 及 Trench 工艺,为您提供覆… 2026/8/5 4:50:19
大语言模型长文本总结:分层处理框架与工程实践指南 1. 项目概述:当LLM遇上长文本,总结的挑战与机遇最近在折腾几个文档分析项目,发现一个绕不开的坎:怎么让大语言模型(LLM)高效、准确地处理动辄几万甚至几十万字的超长文本,并给出一个靠谱的总结&… 2026/8/6 3:00:19
C++单元测试实战:GoogleTest环境搭建与核心用法详解 1. 项目概述如果你正在写C代码,尤其是规模稍大一点的项目,那么单元测试绝对不是你“有空再做”的选项,而是保证代码质量、防止回归错误的生命线。我见过太多项目,初期为了赶进度跳过测试,后期一个简单的功能改动都可能… 2026/8/6 3:00:19
AI智能体记忆系统架构与纵深防御实践指南 1. 项目概述:为什么我们需要关注Agent的Memory与纵深防御?最近在跟几个做企业级AI应用落地的朋友聊天,大家不约而同地提到了同一个痛点:Agent跑着跑着就“失忆”了,或者干脆因为内存问题直接崩溃。这让我想起了之前处理… 2026/8/6 3:00:19
LangChain集成百度千帆SDK:从零构建可落地的LLM应用实战指南 1. 从想法到产品:为什么LLM应用落地这么难? 最近和不少同行聊,发现一个挺普遍的现象:大家都能用ChatGPT的网页版玩出花来,但一旦想把大模型能力集成到自己的业务系统里,或者想做一个能稳定对外服务的AI应用… 2026/8/6 4:00:26
C语言基础:指针(三) 字符指针常见错误#include <stdio.h> int main(int argc, char **argv) {//char *p "hello"; // hello 在内存中,只用一份,只能读取,不能修改char p[] "hello"; // char [] 开辟空间,会把hello字… 2026/8/6 4:00:26
从正交到共轭正交:酉空间、酉矩阵与SVD的数学原理与应用 1. 从“正交”到“共轭正交”:为什么需要酉空间? 在工程和物理的很多领域,我们早已习惯了欧几里得空间(简称欧氏空间)里的那一套几何直觉。比如,两个向量垂直(正交),意味… 2026/8/6 4:00:26
不会写量化代码?把 QuantDash 数据源告诉 Codex,让它帮你写策略 过去学量化,路径通常很长: 先学 Python,再学 pandas,再学金融市场基础,再学技术指标,再学回测,再学调参,再学实盘接口。每一步都没错,但对普通人来说,门槛确… 2026/8/6 4:00:26
Windows VC++运行库终极解决方案:从原理到一键部署脚本 1. 项目概述:为什么我们需要一个“终极解决方案”?如果你在Windows上安装过游戏、专业软件,或者尝试运行一些从GitHub下载的开源工具,那么下面这个弹窗对你来说一定不陌生:“无法启动此程序,因为计算机中丢… 2026/8/6 4:00:26
从开环到闭环:基于PID算法与灰度传感器的智能小车巡线控制实践 1. 项目概述:从“开环瞎跑”到“闭环精准”的进化做底盘小车巡线,估计是很多朋友入坑嵌入式或机器人控制时绕不开的一个经典项目。我最早玩这个的时候,用的还是最简单的“两路灰度传感器逻辑判断”方案:左边传感器看到黑线就让右轮… 2026/8/6 3:55:26
深入解析LimboAI C++内核:架构设计与性能优化实战 1. 项目概述:为什么我们需要深入LimboAI的C内核?如果你是一名使用Godot引擎的游戏开发者,尤其是对AI行为逻辑有较高要求的项目,那么LimboAI这个名字你大概率不会陌生。它作为Godot 4生态中一个备受瞩目的行为树与状态机插件&#… 2026/8/6 0:00:05
Unity 2D游戏敌人AI系统:基于PlayMaker状态机与2D Toolkit的实战开发 1. 项目概述与核心思路大家好,我是老张,一个在游戏开发一线摸爬滚打了十多年的老码农。今天咱们接着聊《空洞骑士》风格2D动作游戏的Demo制作。上一期我们搭好了基础框架,处理了角色移动和碰撞,这一期,我们要让游戏世界… 2026/8/6 0:00:05
被动防火门市场前景发展趋势 被动防火门依靠材质结构、密闭构造阻隔烟火蔓延,无需电控启动,是建筑被动消防系统核心构件,行业依托新规管控、城市更新、工业安全升级迎来稳定扩容,整体朝着合规化、专项化、低碳化、智能化方向发展。现阶段 GB12955‑2024 新版国… 2026/8/6 0:00:05
ncmdumpGUI:一键解锁网易云音乐ncm文件的终极解决方案 ncmdumpGUI:一键解锁网易云音乐ncm文件的终极解决方案 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾经从网易云音乐下载了心爱的歌曲&am… 2026/8/5 5:03:56
分布式配置中心选型实战:Nacos与Consul在创业场景下的对比 分布式配置中心选型实战:Nacos与Consul在创业场景下的对比工程导读:本文深入讨论 分布式配置中心选型实战:Nacos与Consul在创业场景下的对比 在生产工程实践中的核心落地方案。基于 分布式架构与微服务设计 视角,剖析实际痛点、架… 2026/8/5 7:15:00
MoneyPrinterPlus实战指南:AI视频批量生成与自动化发布完整解决方案 MoneyPrinterPlus实战指南:AI视频批量生成与自动化发布完整解决方案 【免费下载链接】MoneyPrinterPlus AI一键批量生成各类短视频,自动批量混剪短视频,自动把视频发布到抖音,快手,小红书,视频号上,赚钱从来没有这么容易过! 支持本地语音模型chatTTS,fasterwhisper,… 2026/8/5 6:23:51
【YOLOv11模型改进系列】08 数据增强的终极形态:用AutoAugment让YOLOv11自己学会“什么数据最有用” 08 数据增强的终极形态:用AutoAugment让YOLOv11自己学会“什么数据最有用” 老伙计,咖啡准备好了吗?上篇我们聊了Mosaic+MixUp的“混乱美学”,你肯定已经体会到,手动调数据增强策略就像给模型当保姆——每换一个数据集就要重新试一遍参数。 上周有个做工业质检的朋友找我… 2026/8/5 7:15:27
AI 智能电动窗帘电机高集成、低功耗 MOSFET 精准选型方案 随着 AIoT 与智能家居深度融合,智能电动窗帘电机对功率 MOSFET 提出新要求:微型化、高效率、逻辑电平驱动及静音运行。微碧半导体(VBsemi)基于先进的 Trench 和 SGT 工艺,为您提供覆盖 H桥驱动、电源管理及电机控制的完… 2026/8/4 8:25:47
AI 智能电动窗帘电机智能功率 MOSFET 完整选型方案 随着 AI 技术在智能家居中的普及(如语音控制、光线感应、场景联动),电动窗帘电机对功率 MOSFET 提出更高要求:高效率、低噪音、高集成度。微碧半导体(VBsemi)基于 SGT 及 Trench 工艺,为您提供覆… 2026/8/5 4:50:19