240 发简信
IP属地:上海
  • Debian安装Redis

    Debian安装Redis Linux发行版:Debian 11 安装过程在Redis官网[https://redis.io/docs/getting-started/]有详...

  • Debian安装MySQL

    Debian安装MySQL Linux发行版:Debian 11 MySQL官网下载deb文件[https://dev.mysql.com/downloads/repo/ap...

  • Debian安装JDK8

    Debian安装Oracle JDK8 Oracle官网下载jdk8的tar包(命令行模式jdk8已无法安装) 解压tar包至/usr/lib/java路径,tar -zxv...

  • 解决无法执行sudo命令

    username is not in the sudoers file 引发的,无法执行sudo命令问题 Linux发行版:Debian 11 执行sudo命令报错,user...

  • 日志门面和logback

    1. JCL JCL,Apache Commons Logging,它提供了统一的日志接口,实现了对其他日志工具的抽象,便于开发者在不同的日志工具间切换。 JCL支持的实现有...

  • JUL和Log4j

    1. JUL JUL,java.util.logging,JDK自带的日志框架。 使用样例, 执行过程, 初始化LogManagerLogManager加载logging.p...

  • 10. 并发工具-线程安全集合类

    并发工具-JUC线程安全集合类 遗留的线程安全集合,如HashTable(map实现),Vector(list实现),出现在早期,方法都用synchronized修饰 使用C...

  • 09. ThreadLocal

    ThreadLocal ThreadLocal类用来提供线程内部的局部变量。这种变量在多线程环境下访问时,能保证各个线程的变量相对独立。ThreadLocal实例通常都是pr...

  • 08. 并发工具-JUC中的并发

    并发工具-JUC中的并发 Lock Semaphore CountdownLatch CyclicBarrier 1. AQS原理 AQS,AbstractQueuedSyn...

  • 07. 并发工具-线程池

    并发工具-线程池 1. 自定义线程池 为什么要用线程池?线程池是池化技术的典型场景,线程池的优点主要有:1.复用线程,降低了资源消耗;2.提高响应速度;3.提供了管理线程数和...

  • 06. 不可变类

    不可变类 不可变(immutable)类,指这个类被创建后,就不能改变成员变量值,它是线程安全的。 不可变类的使用 不可变类的设计 无状态类的设计 问题:SimpleDate...

  • 05. 共享模型之无锁

    共享模型之无锁 使用乐观锁的方式实现并发 CAS与volatile 原子整数 原子引用 原子累加器 Unsafe 1. 无锁实现取款的并发 AtomicInteger内部并没...

  • 120
    线程状态转换

    线程状态转换 调用start()方法 wait()/notify()/notifyAll() join() park()/unpark() wait(long time)/n...

  • 04. 共享模型之内存

    共享模型之内存 Java内存模型(Java Memory Model,JMM),它定义了主存(共享数据)和工作内存(私有数据)的抽象概念,底层对应着CPU寄存器、缓存、硬件内...

  • 120
    03. 共享模型之管程

    学习的视频地址见01。 共享问题 synchronized 线程安全分析 Monitor wait/notify 线程状态转换 活跃性 Lock 1. 共享问题 输出 自增和...

  • 02. 常见方法

    学习视频地址见01。 常见方法 start(),启动新线程,在新的线程中运行run方法中的代码 run() join(),join(long n),等待线程运行结束 getS...

  • 01. 多线程

    学习JUC的相关内容,学习的视频来自B站BV16J411h7Rd。 1. 进程与线程 进程是资源分配的最小单位,java中,线程是作为最小的调度单位。 2. 多线程 实现多线...

  • JVM调优

    推荐阿里开源调优工具Arthas[https://arthas.aliyun.com/] 调优的真正目的时减少GC带来的STW(stop the world,全局暂停),尤其...

  • 垃圾回收(GC)

    1. 算法 判断一个对象是否存活,有两种算法,引用计数法和可达性分析算法 。 1.1 引用计数法 给每一个对象设置一个引用计数器,当一个地方引用该对象时,计数器加1,引用失效...

  • 120
    Java虚拟机

    对JVM的简单学习,文章里的图片来自B站的一个视频,具体视频地址给忘记了hhhh 可以使用命令javap -c SOURCE.class > TARGET对字节码文件进行反编...