avatar
文章
9
标签
3
分类
3
首页
归档
分类
AWEI的个人博客测试1
首页
归档
分类

测试1

发表于2025-06-20|更新于2025-06-28|Java并发编程
|总字数:0|阅读时长:1分钟
文章作者: AWEI
文章链接: https://tguov.fun/2025/06/20/%E6%B5%8B%E8%AF%951/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 AWEI的个人博客!
线程锁
上一篇
Thread Local的学习笔记
Thread Local的学习笔记 在多线程编程中,如何安全、简洁地为每个线程维护独立的变量副本,是开发者经常面临的挑战。Java 提供的 ThreadLocal 能够让我们轻松地在不同线程间隔离数据,避免了使用 synchronized 或复杂上下文传递的麻烦。本文将从使用方法、底层实现、常见陷阱与最佳实践几方面,深度剖析 ThreadLocal 的原理与应用,帮助你在日常开发中驾轻就熟地运用它。 一、Thread Local怎么使用? 线程局部变量是一种用于实现线程局部变量的工具类。它允许每个线程都拥有自己的独立副本,从而实现线程隔离。每个线程各用各的 怎么使用Thread Local? 创建Thread Local 12//创建一个ThreadLocal变量public static ThreadLocal<String> localVariable = new ThreadLocal<>(); 设置Thread...
下一篇
线程池
线程池的基本概述​ 线程池是一种对线程进行复用和管理的机制。在 Java 中,通过线程池来控制线程的数量和线程的状态,提高线程的执行效率,避免频繁创建和销毁线程带来的资源消耗。就像餐厅的传菜员。餐厅有很多顾客下的订单(任务),而传菜员(线程)负责将菜送到顾客那里。如果每个订单都单独找一个传菜员,会导致传菜员数量过多,餐厅资源紧张。所以餐厅会安排固定的传菜员团队(线程池),他们负责不断地在厨房和顾客之间来回送菜(执行任务),提高服务效率。 线程池的状态 状态转换如图所示: 线程池的简单使用流程简单的使用流程可以总结为:任务提交 → 核心线程执行 → 任务队列缓存 → 非核心线程执行 → 拒绝策略处理第一步,创建线程池。 第二步,调用线程池的 execute()方法,准备执行任务。 如果正在运行的线程数量小于 corePoolSize,那么线程池会创建一个新的线程来执行这个任务; 如果正在运行的线程数量大于或等于 corePoolSize,那么线程池会将这个任务放入等待队列; 如果等待队列满了,而且正在运行的线程数量小于...
相关推荐
2025-06-20
Thread Local的学习笔记
Thread Local的学习笔记 在多线程编程中,如何安全、简洁地为每个线程维护独立的变量副本,是开发者经常面临的挑战。Java 提供的 ThreadLocal 能够让我们轻松地在不同线程间隔离数据,避免了使用 synchronized 或复杂上下文传递的麻烦。本文将从使用方法、底层实现、常见陷阱与最佳实践几方面,深度剖析 ThreadLocal 的原理与应用,帮助你在日常开发中驾轻就熟地运用它。 一、Thread Local怎么使用? 线程局部变量是一种用于实现线程局部变量的工具类。它允许每个线程都拥有自己的独立副本,从而实现线程隔离。每个线程各用各的 怎么使用Thread Local? 创建Thread Local 12//创建一个ThreadLocal变量public static ThreadLocal<String> localVariable = new ThreadLocal<>(); 设置Thread...
2025-06-28
Hello World
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub. Quick StartCreate a new post1$ hexo new "My New Post" More info: Writing Run server1$ hexo server More info: Server Generate static files1$ hexo generate More info: Generating Deploy to remote sites1$ hexo deploy More info: Deployment
2025-06-20
线程池
线程池的基本概述​ 线程池是一种对线程进行复用和管理的机制。在 Java 中,通过线程池来控制线程的数量和线程的状态,提高线程的执行效率,避免频繁创建和销毁线程带来的资源消耗。就像餐厅的传菜员。餐厅有很多顾客下的订单(任务),而传菜员(线程)负责将菜送到顾客那里。如果每个订单都单独找一个传菜员,会导致传菜员数量过多,餐厅资源紧张。所以餐厅会安排固定的传菜员团队(线程池),他们负责不断地在厨房和顾客之间来回送菜(执行任务),提高服务效率。 线程池的状态 状态转换如图所示: 线程池的简单使用流程简单的使用流程可以总结为:任务提交 → 核心线程执行 → 任务队列缓存 → 非核心线程执行 → 拒绝策略处理第一步,创建线程池。 第二步,调用线程池的 execute()方法,准备执行任务。 如果正在运行的线程数量小于 corePoolSize,那么线程池会创建一个新的线程来执行这个任务; 如果正在运行的线程数量大于或等于 corePoolSize,那么线程池会将这个任务放入等待队列; 如果等待队列满了,而且正在运行的线程数量小于...
2025-06-20
java的🔒(未完待续)
还没写完呢在这之前先补充一些知识吧,方便后续相关知识的理解 一、内存中的对象长什么样子? 一张图说清楚吧。 堆中的java对象只有数据部分,对象中的数据含义,要结合方法区中的class才能明了。 堆中的对象结构包括三部分:对象头、实例数据、填充数据。这里主要是见一下对象头部分,对象头可以说是一个对象的身份证了。 对象头的构成如下: 1234+------------------+------------------+------------------+------------------+| Mark Word | Klass Pointer | [Array Length] | Instance Data | +------------------+------------------+------------------+------------------+| 64 bits | 32/64 bits | 32 bits | variable ...
2025-06-21
测试============================================
avatar
AWEI
文章
9
标签
3
分类
3
Follow Me
公告
This is my Blog
最新文章
Hello World2025-06-28
测试============================================2025-06-21
JMM内存模型2025-06-20
MySQL一些语法相关2025-06-20
Thread Local的学习笔记2025-06-20
©2025 By AWEI
框架 Hexo 7.3.0|主题 Butterfly 5.3.5
湘ICP备2025118056号
站点已运行 0 天