自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

baiiu

每天前进三十公里

  • 博客(6)
  • 资源 (1)
  • 收藏
  • 关注

原创 Java并发 并发编程一定快么

前言在进行多线程编程时,是希望程序运行的更快,但也会有很多挑战,如上下文切换、死锁、以及受限于硬件和软件的资源限制等问题。本文会介绍这些挑战 :多线程运行时的上下文切换概念多线程一定快么,因为线程的创建和上下文切换是耗时的,可能会比同步执行慢如何测量上下文切换耗时 和 上下文切换次数如何减少上下文切换死锁的挑战,如何解决资源限制的挑战,如何解决什么是上下文切换CPU通过时间...

2020-05-30 23:29:35 338

原创 JNI JNI基础

前言本文过一遍JNI基础。1. CMakeList.txtgradle脚本如下:android{ defaultConfig { externalNativeBuild { cmake { cppFlags "-std=c++11" } } } externalNativeBuild { cmake { path file('

2020-05-24 22:30:39 621

原创 Java并发 并发机制的底层实现原理

前言代码最终需要转变为汇编指令在CPU上执行,Java中所使用的并发机制依赖于JVM的实现和CPU的指令。本文将深入底层去理解并发机制的底层实现原理。会介绍:volatile的实现原理final的实现原理synchronized的实现原理原子操作的实现原理1. volatile的定义和实现原理volatile定义Java语言允许线程访问共享变量,为了确保共享变量能被准确和...

2020-05-07 11:29:26 513 1

原创 Java并发 锁优化和锁升级

前言本篇文章介绍Java Synchronized锁优化。锁是存在哪里的,怎么标识是什么锁Monitor机制在Java中怎么表现的锁优化锁升级1. 锁存在哪里对象在内存中的布局分为三块区域:对象头、实例数据和对齐填充。Hotspot虚拟机的对象头主要包括两部分数据:Mark Word(标记字段)、Klass Pointer(类型指针),数组会多1字宽(32位: 4字节)来存储...

2020-05-07 11:29:07 313 1

原创 Java并发 Java内存模型 happens-before原则

1. 两个关键问题并发编程中,需要处理两个关键问题:线程之间如何通信 和 线程之间如何同步。通信是指线程之间怎样交换信息。同步是指怎样控制不同线程间操作发生的相对顺序。在命令式编程中,线程之间的通信机制有两种:共享内存 和 消息传递。在共享内存的并发模型里,线程之间共享程序的公共状态,通过写-读内存中的公共状态进行隐式通信;并且它的同步也是显示进行的,必须显示指定某段代码需要在线程之间互斥...

2020-05-07 11:28:09 333 1

原创 Java虚拟机 对象创建流程、初始化流程

前言梳理对象创建流程对象创建流程new指令时,定位该指令的参数在常量池中的符号引用如果没有,则进行类的加载、连接和初始化。虚拟机为新生对象分配内存将分配到的内存空间都初始化为零值,不包括对象头,并初始化对象头(哈希码、gc年龄等)调用对象方法1. 类加载流程深入理解Java虚拟机 第七章 虚拟机类加载时机与过程2. 对象的内存布局对象在内存中的布局分为三块区域:对象...

2020-05-07 11:16:19 598 1

深入理解Android内核设计思想第一版高清完整带目录

第一版,带目录,高清完整 《深入理解Android内核设计思想》适用于Android 4.3以上的版本。全书从操作系统的基础知识入手,全面剖析进程/线程、内存管理、Binder机制、GUI显示系统、多媒体管理、输入系统等核心技术在Android中的实现原理。书中讲述的知识点大部分来源于工程项目研发,因而具有较强的实用性,希望可以让读者“知其然,更知其所以然”。全书分为编译篇、系统原理篇、应用原理篇、系统工具篇共4篇22章,基本涵盖了参与Android开发所需具备的知识,并通过大量图片与实例来引导读者学习,以求尽量在源代码分析外为读者提供更易于理解的思维方式。 《深入理解Android内核设计思想》既适合Android系统工程师,也适合于应用开发工程师来阅读提升Android开发能力。读者可以在《深入理解Android内核设计思想》潜移默化的学习过程中更深刻地理解Android系统,并将所学知识自然地应用到实际开发难题的解决中。

2018-05-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除