06 2023 档案

摘要:### 为什么使线程池 java的线程对应是操作系统级别的线程调用,不断的或无限制的启停线程是对系统资源的一种消耗也会增加系统的不稳定性。同时很多个线程间的运行上下文切换也会降低实际系统的性能。在对一些大量耗时较小的任务不断的启停线程会降低性能。这个时候就比较适合使用线程池。线程池在池中维护一定的工 阅读全文
posted @ 2023-06-26 16:22 朋羽 阅读(19) 评论(0) 推荐(0) 编辑
摘要:### 什么是AOS AQS抽象队列同步器(AbstractQueuedSynchronizer)。是java juc里提供的一个实现锁同步机制的框架。它提供同步状态、阻塞和唤醒线程函数以及队列模型的原子管理。大多数同步类(Lock、Semaphore、ReentrantLock等)都是基于AQS实 阅读全文
posted @ 2023-06-19 17:03 朋羽 阅读(78) 评论(0) 推荐(0) 编辑
摘要:Unsafe类是JRE提供的一个工具类,在sun.misc包下。该类提供了一些计算机底层操作工具方法。如直接内存操作,类似指针形式的内存访问,线程调度等。提高了java执行效率,但是如果使用不当,同时也带来了一定的风险。这个类被设计主要供java平台类库使用(像JUC包中大量使用该类),不是供实际应 阅读全文
posted @ 2023-06-14 16:20 朋羽 阅读(34) 评论(0) 推荐(0) 编辑
摘要:#### 作用 ThreadLocal用来每个线程存储自己一份,在整个线程声明周期都可以访问到。 #### 基本使用 三个基本方法set/get/remove。set初始时候放值,get获取设置的值,remove清除设置的值。 ```java ThreadLocal threadLocal = ne 阅读全文
posted @ 2023-06-09 13:53 朋羽 阅读(9) 评论(0) 推荐(0) 编辑
摘要:JOL(Java Object Layout) 工具包可以展示java对象在jvm中的结构信息,用来进行内存分析。是由openjdk提供的小工具包。git地址。因此下面的测试基于hotspot虚拟机环境下。 添加依赖 org.openjdk.jol jol-core 0.16 打印JVM基本信息 ` 阅读全文
posted @ 2023-06-06 16:46 朋羽 阅读(221) 评论(0) 推荐(0) 编辑
摘要:java内存模型(memory model)定义了java虚拟机如何与计算机内存交互。JVM将内存主要分为栈(stack)内存和堆(heap)内存。每当我们声明新的变量和对象、调用新的方法、声明String或执行类似的操作时,JVM都会从堆栈内存或堆空间为这些操作指定内存。 ![The Java M 阅读全文
posted @ 2023-06-05 11:20 朋羽 阅读(36) 评论(0) 推荐(0) 编辑
摘要:Java虚拟机定义了在程序执行期间使用的各种运行时数据区域。其中一些数据区域是在Java虚拟机启动时创建的,只有当Java虚拟机退出时才会销毁。其他数据区域是每个线程的。每个线程的数据区域在创建线程时创建,在线程退出时销毁。 开局盗张图 ![6 JVM Runtime Data Areas](htt 阅读全文
posted @ 2023-06-01 18:16 朋羽 阅读(16) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示