- 开机动画的添加 修改目录: frameworks\base\cmds\bootanimation\BootAnimation.h 修改目录: frameworks\base\cmds\bootanimation\BootAnimation.cpp 1、threadLoop修改 用来显示第三个开机画面的线程的初始化工作就执行完成后接下来,就会执行这个线程的主... 开机动画的添加 修改目录: frameworks\base\cmds\bootanimation\BootAnimation.h 修改目录: frameworks\base\cmds\bootanimation\BootAnimation.cpp 1、threadLoop修改 用来显示第三个开机画面的线程的初始化工作就执行完成后接下来,就会执行这个线程的主...
- put()方法是并发HashMap源码分析的重点方法,这里涉及到并发扩容,桶位寻址等等…JDK1.8 ConcurrentHashMap结构图: 1、put方法源码解析 // 向并发Map中put一个数据 public V put(K key, V value) { return putVal(key, value, false); } // 向并发Map... put()方法是并发HashMap源码分析的重点方法,这里涉及到并发扩容,桶位寻址等等…JDK1.8 ConcurrentHashMap结构图: 1、put方法源码解析 // 向并发Map中put一个数据 public V put(K key, V value) { return putVal(key, value, false); } // 向并发Map...
- Android的启动流程 Loader层 当手机处于关机状态时,长按电源键开机,引导芯片开始从固化在Boot ROM里的预设代码开始执行,然后加载引导程序Boot Loader到RAM。 Boot Loader被加载到RAM之后开始执行,该程序主要完成检查RAM,初始化硬件参数等功能。 Kernel层 引导程序之后进入Android内核层,先启动swapp... Android的启动流程 Loader层 当手机处于关机状态时,长按电源键开机,引导芯片开始从固化在Boot ROM里的预设代码开始执行,然后加载引导程序Boot Loader到RAM。 Boot Loader被加载到RAM之后开始执行,该程序主要完成检查RAM,初始化硬件参数等功能。 Kernel层 引导程序之后进入Android内核层,先启动swapp...
- 1. 简介 AQS的全称是AbstractQueuedSynchronizer,它的定位是为Java中几乎所有的锁和同步器提供一个基础框架。 AQS是基于FIFO的队列实现的,并且内部维护了一个状态变量state,通过原子更新这个状态变量state即可以实现加锁解锁操作。 2. 主要内部类Node static final class Node { // 标... 1. 简介 AQS的全称是AbstractQueuedSynchronizer,它的定位是为Java中几乎所有的锁和同步器提供一个基础框架。 AQS是基于FIFO的队列实现的,并且内部维护了一个状态变量state,通过原子更新这个状态变量state即可以实现加锁解锁操作。 2. 主要内部类Node static final class Node { // 标...
- 系列内容深入理解linux应用Linux进程间通信方式 环境: 平台内核版本安卓版本RK3399Linux4.4Android7.1 文章目录 1、Linux进程间通信方式1.1、管道(Pipe)和命名管道(FIFO)1.2、消息队列(Message Queue)1.3、共享内存(Shared Memory)1.4、套接字(Socket) 1、... 系列内容深入理解linux应用Linux进程间通信方式 环境: 平台内核版本安卓版本RK3399Linux4.4Android7.1 文章目录 1、Linux进程间通信方式1.1、管道(Pipe)和命名管道(FIFO)1.2、消息队列(Message Queue)1.3、共享内存(Shared Memory)1.4、套接字(Socket) 1、...
- 0. 常⻅的三⼤设计模式分类 创建型模式:提供了⼀种在创建对象的同时隐藏创建逻辑的⽅式,使 得程序在判断针对某个给定实例需要创建哪些对象时更 加灵活,比如: 常用4个:⼯⼚模式、抽象⼯⼚模式、单例模式、建造者模式不常用:原型模式 结构型模式:关注类和对象的组合。继承的概念被⽤来组合接⼝和定义组合对象获得新功能的⽅式 常⽤4个:适配器模式、桥接模式、装饰器模式、代理模式... 0. 常⻅的三⼤设计模式分类 创建型模式:提供了⼀种在创建对象的同时隐藏创建逻辑的⽅式,使 得程序在判断针对某个给定实例需要创建哪些对象时更 加灵活,比如: 常用4个:⼯⼚模式、抽象⼯⼚模式、单例模式、建造者模式不常用:原型模式 结构型模式:关注类和对象的组合。继承的概念被⽤来组合接⼝和定义组合对象获得新功能的⽅式 常⽤4个:适配器模式、桥接模式、装饰器模式、代理模式...
- glances 是利用Python语言开发,的监控工具,与Linux命令中的top最为相似,但是比top命令更齐全. 主要用来监控: ·CPU 使用 率; ·内存 使用 情况; ·内核 统计 信息 和 运行 队列 信息; · 磁盘 I/ O 速度、 传输 和 读/ 写 比率; ·文件... glances 是利用Python语言开发,的监控工具,与Linux命令中的top最为相似,但是比top命令更齐全. 主要用来监控: ·CPU 使用 率; ·内存 使用 情况; ·内核 统计 信息 和 运行 队列 信息; · 磁盘 I/ O 速度、 传输 和 读/ 写 比率; ·文件...
- 平台 内核版本 输入系统框架 Reader线程核心类 目录:frameworks/native/services/inputflinger/EventHub.h mDevices,它是一个vector,表示了多个输入设备。 mDevice <编号 Devices*>,编号代表第几个输入设备, Devices则表... 平台 内核版本 输入系统框架 Reader线程核心类 目录:frameworks/native/services/inputflinger/EventHub.h mDevices,它是一个vector,表示了多个输入设备。 mDevice <编号 Devices*>,编号代表第几个输入设备, Devices则表...
- AQS成员方法解析(释放锁逻辑) 1. unlock释放锁方法 // 位于RentrantLock中:释放锁的方法 public void unlock() { // 释放锁 sync.release(1); } // 位于AQS的静态内部类Sync中:真正释放锁的方法 // RentrantLock.unlock() -> sync.release() p... AQS成员方法解析(释放锁逻辑) 1. unlock释放锁方法 // 位于RentrantLock中:释放锁的方法 public void unlock() { // 释放锁 sync.release(1); } // 位于AQS的静态内部类Sync中:真正释放锁的方法 // RentrantLock.unlock() -> sync.release() p...
- 平台 内核版本 RK1108 Linux3.1 文章目录 POSIX 标准要求: When a thread attributes object is no longer required, it should be destroyed using the pthread_attr_destroy() f... 平台 内核版本 RK1108 Linux3.1 文章目录 POSIX 标准要求: When a thread attributes object is no longer required, it should be destroyed using the pthread_attr_destroy() f...
- 平台 内核版本 安卓版本 RK3399 Linux4.4 Android7.1 文章目录 1、API 1.1、创建工作队列workqueue_struct 1.2、初始化工作work_struct,指定工作函数 1.3、将工作加入到工作队列中,最终唤醒内核线程 2、workqueue_... 平台 内核版本 安卓版本 RK3399 Linux4.4 Android7.1 文章目录 1、API 1.1、创建工作队列workqueue_struct 1.2、初始化工作work_struct,指定工作函数 1.3、将工作加入到工作队列中,最终唤醒内核线程 2、workqueue_...
- AQS源码探究_05 Conditon条件队列(手写一个入门的BrokingQueue) 1. Condition队列介绍 AQS中还有另一个非常重要的内部类ConditionObject,它实现了Condition接口,主要用于实现条件锁。 ConditionObject中也维护了一个队列,这个队列主要用于等待条件的成立,当条件成立时,其它线程将signal这... AQS源码探究_05 Conditon条件队列(手写一个入门的BrokingQueue) 1. Condition队列介绍 AQS中还有另一个非常重要的内部类ConditionObject,它实现了Condition接口,主要用于实现条件锁。 ConditionObject中也维护了一个队列,这个队列主要用于等待条件的成立,当条件成立时,其它线程将signal这...
- 前面几篇文章分析了并发HashMap的put方法及其相关方法,transfer方法,那么接下来本篇文章相对之前几篇难度会小一些。本篇文章介绍ConcurrentHashMap的get方法和remove方法。 1、get方法 get方法:获取元素,根据目标key所在桶的第一个元素的不同采用不同的方式获取元素,关键点在于find()方法的重写。 public V ... 前面几篇文章分析了并发HashMap的put方法及其相关方法,transfer方法,那么接下来本篇文章相对之前几篇难度会小一些。本篇文章介绍ConcurrentHashMap的get方法和remove方法。 1、get方法 get方法:获取元素,根据目标key所在桶的第一个元素的不同采用不同的方式获取元素,关键点在于find()方法的重写。 public V ...
- 文章目录 什么是死锁? 发生死锁情况1: 发生死锁情况2: 平台 内核版本 安卓版本 RK3399 Linux4.4 Android7.1 什么是死锁? 死锁是指多个进程(线程)因为长久等待已被其他进程占有的的资源而陷入阻塞的一种状态。当等待的资源一直得不到释放,死锁会一直持... 文章目录 什么是死锁? 发生死锁情况1: 发生死锁情况2: 平台 内核版本 安卓版本 RK3399 Linux4.4 Android7.1 什么是死锁? 死锁是指多个进程(线程)因为长久等待已被其他进程占有的的资源而陷入阻塞的一种状态。当等待的资源一直得不到释放,死锁会一直持...
- 平台 内核版本 安卓版本 RK3399 Linux4.4 Android7.1 文章目录 步骤 程序 步骤 ①系统进程相关文件路径/proc ②获取系统的物理总内存/proc/meminfo ③获取进程使用的物理内存/proc/[pid]/status ④进程使用的物理内存/系... 平台 内核版本 安卓版本 RK3399 Linux4.4 Android7.1 文章目录 步骤 程序 步骤 ①系统进程相关文件路径/proc ②获取系统的物理总内存/proc/meminfo ③获取进程使用的物理内存/proc/[pid]/status ④进程使用的物理内存/系...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签