首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场

nobody

nobody
专栏成员
141
文章
119169
阅读量
21
订阅数
学习AQS:Java并发编程的基石
在Java并发编程中,AbstractQueuedSynchronizer(简称AQS)是构建锁和同步器的核心框架。它通过提供状态管理、线程排队和阻塞唤醒机制,为开发者构建高效的线程协作工具提供了底层支持。
崔认知
2025-05-08
1170
ThreadLocal:Java多线程编程的“利器”与“陷阱”
在Java多线程编程中,线程安全始终是开发者面临的最大挑战之一。传统的解决方案(如synchronized、volatile)虽然能解决共享资源竞争问题,但往往伴随着性能损耗和代码复杂性的增加。而ThreadLocal通过为每个线程提供独立的变量副本,实现了线程隔离,彻底避免了多线程间的资源竞争,成为解决线程安全问题的“终极武器”。
崔认知
2025-05-04
1470
java如何正确停止线程?为什么 volatile 标记位的停止方法是错误的?
在 Java 多线程编程中,正确停止线程是一个关键问题。不恰当的停止方式可能导致数据不一致、资源泄漏甚至系统崩溃。本文将详细介绍三种停止线程的方案:中断(interrupt)、volatile 标记位以及中断 + volatile 标记位的组合方式,并分析各自的优缺点,帮助开发者根据实际场景选择最合适的方案。
崔认知
2025-05-04
1310
【3blue1brown神经网络教程】第二章:梯度下降(Gradient descent),神经网络如何学习
在上一课中,我们探讨了神经网络(neural networks)的结构。现在,让我们谈谈网络如何通过查看大量标记的训练数据来学习。核心思想是一种称为梯度下降(gradient descent)的方法,这不仅构成了神经网络学习的基础,也是许多其他机器学习方法的核心。
崔认知
2025-04-10
1610
捕获Java线程转储(Thread Dump)的几种方法
线程转储是Java进程中所有线程状态的快照。每个线程的状态通过堆栈跟踪(Stack Trace)呈现,展示线程的调用栈内容。线程转储对诊断问题非常有用,因为它能揭示线程的活动信息。
崔认知
2025-04-02
1480
高并发中的分而治之术: Java中Striped64和ConcurrentHashMap 的高并发之道
在Java并发编程领域,Striped64和ConcurrentHashMap是两个极具代表性的并发数据结构。它们的设计巧妙地解决了高并发场景下的性能瓶颈,为开发者提供了高效、可靠的并发编程工具。本文将深入剖析它们背后的架构思想,并探讨其潜在的缺点。 一、Striped64的并发设计思想
崔认知
2025-03-11
930
Redis的键驱逐策略及数据过期删除策略
Redis通常用作缓存,以加快对较慢服务器或数据库的读取访问。由于缓存条目是持久存储的数据的副本,因此当该高速缓存耗尽内存时,通常可以安全地将它们逐出(如果需要,将来可以再次缓存它们)。
崔认知
2025-03-03
1771
操作系统中的I/O读写基础与缓冲区机制解析
一、I/O读写的基本原理 I/O(输入/输出)是操作系统的核心功能之一,负责在用户程序与外部设备(如磁盘、网卡、键盘等)之间传输数据。其核心流程可分为以下两个阶段: 1. 数据准备阶段
崔认知
2025-03-03
1730
redis8.0新特性之Rdb Channel Replication:如何使复制过程更快,提升主节点在全量同步期间的性能
水平及维护精力所限,译文不免存在错误或过时之处,如有疑问,请查阅原文(文末英文链接)。
崔认知
2025-03-03
1880
Redis 大 Key 问题深度解析与规避指南
Redis大Key指占用内存或元素数量超过阈值的键值对,具体标准因业务场景而异:
崔认知
2025-03-03
1630
使用Lombok的@Builder 注解时,属性有默认值,会有什么坑🥶
在 java 中使用 Lombok的注解@Builder时,对象属性有默认值时会碰到默认值不会生效的坑。
崔认知
2025-02-26
1210
如何解决Java中的"类文件版本不正确"(class file has wrong version)错误
作为Java开发者,我们经常会遇到"类文件版本不正确"(class file has wrong version)的错误提示。这种错误通常是由于编译时使用的Java版本与运行时环境不匹配导致的。本文将深入解析该问题的成因并提供解决方案。
崔认知
2025-02-26
4732
AI正在培养一代"文盲程序员"
翻译自原文:https://nmn.gl/blog/ai-illiterate-programmers
崔认知
2025-02-21
980
Spring @Value 注解快速指南
Spring 的@Value 注解可用于将值注入 Spring 管理的 bean 的属性中,可以应用于属性或构造函数/方法参数级别。 属性注入使用
崔认知
2025-02-18
1490
使用DeepSeek必备的10个技巧
今天,我们直接讲干货。用10个问题带大家了解:DeepSeek是什么,怎么用,如何与DS高质量对话,以及一些隐藏技巧。
崔认知
2025-02-06
1.9K0
分布式系统的几大误区
分布式系统在设计和实现中,存在许多常见的误区,这些误区可能导致系统性能下降、可靠性降低及安全性问题等。以下是常见的几大误区: 1. 网络是可靠的
崔认知
2025-02-03
780
MySQL Deprecate VALUES syntax in INSERT .ON DUPLICATE KEY UPDATE
'VALUES function' is deprecated and will be removed in a future release. Please use an alias (INSERT INTO ... VALUES (...) AS alias) and replace VALUES(col) in the ON DUPLICATE KEY UPDATE clause with alias.col instead
崔认知
2024-10-31
1720
《JVM G1源码分析和调优》读书:JVM垃圾回收器
堆空间是垃圾回收的主要职责之一(注:内存如何分配也涉及,即内存分配与回收),目前垃圾回收算法主要有两类:
崔认知
2024-10-25
2180
Java的Thread线程对象对异常捕获的处理策略
线程对异常的处理主要涉及到java.lang.Thread.UncaughtExceptionHandler:
崔认知
2024-09-18
2000
单元测试中,如何为java设置系统变量(System Variables)【建议使用配置文件或系统属性】
开发中一般我们使用配置文件或系统属性(System Properties)配置参数,而不用系统变量(System Variables),因为配置文件或系统属性(System Properties)比较灵活,系统变量(System Variables)是操作系统级别的环境变量,它不是Java特有的,而是操作系统的一部分。
崔认知
2024-09-18
3680
点击加载更多
活动推荐
社区活动
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档