• 记一次Android内存泄漏的优化经历

    问题 背景 通过线上收集的日志分析,存在部分OOM的日志,故通过leakcanary进行内存泄漏追踪。 引用链日志 在开发的过程中,leakca...

  • 120
    Android应用架构前世今生

    前言 Android的开发生态系统发展迅速,在开发Android的几年的时间里,用来构建Android应用的架构与技术一直在不断进化。随着项目的...

  • 120
    回顾2017,展望2018

    回顾2017 又到了年末了,希望通过总结来回顾2017。回首这一年,感觉还是有在进步。除了当爸爸了,工作上思维逻辑也有了进一步的提升。也坚持一直...

  • 120
    玩转Android状态栏

    前言 前段时间,突然收到一个状态栏颜色优化设计的任务,将原本应用整体的黑色状态栏修改为根据标题栏颜色进行沉浸式设计,显示效果如下: 经过分析及踩...

  • 120
    Java并发编程-锁及并发容器

    锁 锁是用来控制多个线程访问共享资源的方式,一般来说,一个锁能够防止多个线程同时访问共享资源(但是有些锁可以允许多个线程并发的访问共享资源,比如...

  • Java并发编程-原子类及并发工具类

    原子类 Java从JDK 1.5开始提供了java.util.concurrent.atomic包(以下简称Atomic包),这个包中的原子操作...

  • 120
    Java并发编程-多线程

    Thread 简介 现代操作系统调度的最小单元是线程,也叫轻量级进程,在一个进程里可创建多个线程,这些线程都拥有各自的计数器、堆栈和局部变量等属...

  • 120
    Java并发编程-基础原理

    并发编的挑战 上下文切换(并行不一定比串行快) 时间片是CPU分配给各个线程的时间,一般是几十毫秒。因为时间片非常短,所以CPU通过不停地切换线...

  • JVM学习笔记(5)-JVM类加载机制

    简介 代码编译的结果从本地机器码转变为字节码,是存储格式发展的一小步,却是编程语言发展的一大步。与那些在编译时需要进行连接工作的语言不通,在Ja...

个人介绍
优秀是一种习惯,坚持是一种品质。
个人博客:huangjunbin.com
微信:hjb1011
邮箱:junbin1011@163.com