09 2021 档案

摘要:# Java的对象头mark word 上一篇博客我们编译了Linux源码来证明了Java中有偏向锁,但是我们从周志明大佬的《深入理解java虚拟机》的书中知道,我们可以通过分析Java对象头中MarkWord来查看是那种锁,下面是32位JVM的对象中的Mark Word图,但是随着JDK的不断升 阅读全文
posted @ 2021-09-26 18:05 笨拙的小菜鸟 阅读(140) 评论(0) 推荐(0) 编辑
摘要: Java中wait()方法为什么要放在同步块中?(lost wake-up 问题) 问:Java 多线程中 wait() 方法为什么要放在同步块中? 答:为了避免「lost wake up 问题」:,即无法唤醒问题。 临界资源 系统中某些资源一次只允许一个进程使用,称这样的资源为临界资源 或互 阅读全文
posted @ 2021-09-25 08:22 笨拙的小菜鸟 阅读(958) 评论(0) 推荐(0) 编辑
摘要:Java虚假唤醒及如何避免虚假唤醒 先给出一段虚假唤醒的代码如下: package bat.ke.qq.com.learnjuc.thread; public class SpuriousWakeup { public static void main(String[] args) { Data2 阅读全文
posted @ 2021-09-23 22:39 笨拙的小菜鸟 阅读(215) 评论(0) 推荐(0) 编辑
摘要:Java线程的生命周期 New(新创建) Runnable(可运行) Blocked(被阻塞) Waiting(等待) Timed Waiting(计时等待) Terminated(被终止) 在我们程序编码中如果想要确定线程当前的状态,可以通过getState()方法来获取,同时我们需要注意任何线程 阅读全文
posted @ 2021-09-23 22:16 笨拙的小菜鸟 阅读(147) 评论(0) 推荐(0) 编辑
摘要:Java 线程状态之 TIMED_WAITING 在上一篇章中我们谈论了 WAITING 状态,在这一篇章里,我们来看剩余的最后的一个状态:TIMED_WAITING(限时等待)。 定义 一个正在限时等待另一个线程执行一个动作的线程处于这一状态。 A thread that is waiting f 阅读全文
posted @ 2021-09-23 20:53 笨拙的小菜鸟 阅读(2345) 评论(0) 推荐(0) 编辑
摘要:Java 线程状态之 BLOCKED 在上一篇章中,我们强调了 BLOCKED 状态跟 I/O 的阻塞是不同的,它不是一般意义上的阻塞,而是特指被 synchronized 块阻塞,即是跟线程同步有关的一个状态。 BLOCKED 状态的定义 前面已经说过 BLOCKED(阻塞) 的简单定义为: 一个 阅读全文
posted @ 2021-09-23 20:23 笨拙的小菜鸟 阅读(2565) 评论(0) 推荐(0) 编辑
摘要:Java 线程状态之 WAITING 在上一篇里我们讲了一个重要状态:BLOCKED,在这一篇章里,我们来看另一个重要的状态:WAITING(等待)。 定义 一个正在无限期等待另一个线程执行一个特别的动作的线程处于这一状态。 A thread that is waiting indefinitely 阅读全文
posted @ 2021-09-23 20:19 笨拙的小菜鸟 阅读(1256) 评论(0) 推荐(1) 编辑
摘要:Java 线程状态之 RUNNABLE 摘要:深入探讨了 Java 线程的 RUNNABLE 状态,特别是对处在 IO 阻塞时的状态进行了深入分析。 目录 什么是 RUNNABLE? 与传统的 ready 状态的区别 与传统的 running 状态的区别 当 I/O 阻塞时 如何看待 RUNNABL 阅读全文
posted @ 2021-09-23 20:11 笨拙的小菜鸟 阅读(874) 评论(0) 推荐(1) 编辑
摘要:关于Java的线程状态 文章来自:Java线程状态 Java线程有6种状态。在某个给定时间点上,一个线程只能处于这6种状态中的一种。 线程状态的枚举:Thread.State 这6种状态被明确地定义在Thread类的一个内部枚举类Thread.State中: 它们是: NEW (新建) 一个尚未启动 阅读全文
posted @ 2021-09-23 20:00 笨拙的小菜鸟 阅读(177) 评论(0) 推荐(0) 编辑
摘要:解决问题:java当中的线程和操作系统的线程是什么关系? 关于操作系统的线程 1.linux操作系统的线程控制原语 int pthread_create(pthread_t *thread, const pthread_attr_t *attr,void *(*start_routine) (voi 阅读全文
posted @ 2021-09-23 11:04 笨拙的小菜鸟 阅读(121) 评论(0) 推荐(0) 编辑
摘要:笔者发现一个可以 无限重置 IDEA 30天试用期的方法, 暴力无解,简单又稳定,再也不用担心激活码经常失效的问题了,具体步骤跟着下面的图文教程一步一步来就行,非常简单哟。 注意 本教程适用于 IntelliJ IDEA 2021.2.1 以下所有版本,请放心食用~ 本教程适用于 JetBrains 阅读全文
posted @ 2021-09-16 22:04 笨拙的小菜鸟 阅读(8073) 评论(1) 推荐(0) 编辑
摘要:加载类 实例化前 》InstantiationAwareBeanPostProcessor 实例化 mergedBeanDefinitionBeanPostProcessor.applyMergedBeanDefinitionPostProcessors 找注入点 实例化后 --》 Instanti 阅读全文
posted @ 2021-09-16 06:07 笨拙的小菜鸟 阅读(59) 评论(0) 推荐(0) 编辑
摘要:生命周期流程图镇楼 课前小demo 有关于推断构造函数的演示 UserService.java @Component public class UserService{ @Autowired private OrderService orderService; public UserService( 阅读全文
posted @ 2021-09-16 06:07 笨拙的小菜鸟 阅读(86) 评论(0) 推荐(0) 编辑
摘要:前言: Spring最重要的功能就是帮助程序员创建对象(也就是IOC),而启动Spring就是为创建Bean对象做准备,所以我们先明白Spring到底是怎么去创建Bean的,也就是先弄明白Bean的生命周期。 Bean的生命周期就是指:在Spring中,一个Bean是如何生成的,如何销毁的 Bean 阅读全文
posted @ 2021-09-14 07:15 笨拙的小菜鸟 阅读(5763) 评论(0) 推荐(1) 编辑
摘要:spring生命周期上: 要注意的是spring启动的时候已经经过了spring的生命周期了 transformBeanName(name) getSingleton(beanName)是可以拿到 getObjectForBeanInstance 是不是factoryBean name 程序员传入、 阅读全文
posted @ 2021-09-14 07:14 笨拙的小菜鸟 阅读(105) 评论(0) 推荐(0) 编辑
摘要:代码示例1: 如果是抽象类那么抽象类上得是Lookup注解,此时才能将resource注册成一个 Appconfig.java @Configuration @ComponentScan(basePackages= "com.luban") public class AppConfig { } Us 阅读全文
posted @ 2021-09-11 16:36 笨拙的小菜鸟 阅读(239) 评论(0) 推荐(0) 编辑
摘要:前言 ClassMetadata AnnotatedTypeMetadata 可以理解为对 Class元数据 和 Annotation元数据 的抽象 版本 Spring 5.1.x Class Class 有如下形式: Top Level Class:顶层类,即普通类 Inner Class:非静态 阅读全文
posted @ 2021-09-11 10:12 笨拙的小菜鸟 阅读(541) 评论(0) 推荐(0) 编辑
摘要:1、getDeclaringClass return the declaring class for this class 获取对应类的声明类Class对象 2、getEnclosingClass return the immediately enclosing class of the under 阅读全文
posted @ 2021-09-11 09:32 笨拙的小菜鸟 阅读(232) 评论(0) 推荐(0) 编辑
摘要:文章目录 垃圾回收相关概念 System.gc() 的理解 在默认情况下,通过System.gc()者Runtime.getRuntime().gc() 的调用,会显式触发Full GC,同时对老年代和新生代进行回收,尝试释放被丢弃对象占用的内存。 然而System.gc()调用附带一个免责声明,无 阅读全文
posted @ 2021-09-05 22:06 笨拙的小菜鸟 阅读(43) 评论(0) 推荐(0) 编辑
摘要:title: JVM系列-第10章-垃圾回收概述和相关算法 date: 2020-11-25 13:22:37 tags: [JVM, jvm, jvm.gc, java虚拟机] category: JVM 垃圾回收概述 Java 和 C语言的区别,就在于垃圾收集技术和内存动态分配上,C语言没有垃圾 阅读全文
posted @ 2021-09-05 20:37 笨拙的小菜鸟 阅读(77) 评论(0) 推荐(0) 编辑
摘要:StringTable(字符串常量池) String的基本特性 String:字符串,使用一对 “” 引起来表示 String s1 = "atguigu" ; // 字面量的定义方式 String s2 = new String("hello"); // new 对象的方式 String被声明为f 阅读全文
posted @ 2021-09-05 13:13 笨拙的小菜鸟 阅读(69) 评论(0) 推荐(0) 编辑
摘要:title: 第十一章 - 直接内存 date: 2020-11-30 17:38:11 tags: [jvm, jvm, java] category: jvm 1.直接内存概述 不是虚拟机运行时数据区的一部分,也不是《Java虚拟机规范》中定义的内存区域。 直接内存是在Java堆外的、直接向系统 阅读全文
posted @ 2021-09-05 12:11 笨拙的小菜鸟 阅读(40) 评论(0) 推荐(0) 编辑
摘要:1.对象的实例化 1.1 大厂面试题 美团 对象在JVM中是怎么存储的? 对象头信息里面有哪些东西? 蚂蚁金服 二面:java对象头里有什么? 1.2 创建对象的方式 new:最常见的方式、单例类中调用getInstance的静态类方法、XXXFactory的静态方法 Class的newInstan 阅读全文
posted @ 2021-09-05 10:58 笨拙的小菜鸟 阅读(85) 评论(0) 推荐(0) 编辑
摘要:title: 第九章 - 方法区 date: 2020-11-30 10:18:33 tags: [jvm, jvm, java, hotspot] category: jvm 1.栈、堆、方法区的交互关系 从内存结构看 从线程共享与否的角度看 ThreadLocal:如何保证多个线程在并发环境下的 阅读全文
posted @ 2021-09-04 09:31 笨拙的小菜鸟 阅读(58) 评论(0) 推荐(0) 编辑

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