None_Ling

LV1
发表了文章

Kotlin --- Operator Overloading

Kotlin的操作符重载与C++类似,虽然没有C++那么强大,但是仍然可以实现Kotlin的操作符重载。

None_Ling
发表了文章

Git rebase命令 - 修改以前提交记录

在某个分支开发Feature过程中,可能在N次前的某个提交中需要修改用户名,而该分支已经Push到远端。

None_Ling
发表了文章

Java中的SimpeDateFormatter优化

原来是通过正则表达式以及SimpleDateFormatter.parse()进行解析,从而导致解析一个文件耗时非常长.

None_Ling
发表了文章

Android中SystemServer的Watchdog

SystemServer中通过Watchdog来检测UI、IO、Fg等线程是否会阻塞 , 也可以检测是否发生死锁.

None_Ling
发表了文章

Android 2.3中的LinearAlloc

在2.3版本Apk安装时 , 会进行Dexopt , 如果单个Dex中的class过大/method过多 , 就会导致LinearAlloc为Class/Met...

None_Ling
发表了文章

Android各版本虚拟机的Dexopt区别

从Android 2.1版本到现在的Android 11 , 中间虚拟机变化过三次 :

None_Ling
发表了文章

Android 8.0 dexopt执行时机

在Android 8.0中 , 一共有5中编译时机 (或者说原因) , 而dexopt会根据这几个场景进行不同的编译过程 , 而对应的过程所使用的编译方法则是通...

None_Ling
发表了文章

Android前后台切换监听

使用ProcessLifeCyclerOwner主要注意以下几点 (官网截取) :

None_Ling
发表了文章

Lifecycle原理分析

LifeCycle通过在FragmentActivity中会添加ReportFragment用来监听Activity的生命周期 , 而在注册LifeCycleO...

None_Ling
发表了文章

Android AAPT1编译流程

在APP打包过程中 , 会通过AAPT编译资源以及生成R.java文件. 一般我们使用以下命令来调用aapt命令 :

None_Ling
发表了文章

Android中窗口Input事件接收

至此 , 在InputMangerService与应用窗口间就建立了Socket连接.

None_Ling
发表了文章

Android中Input事件初始化、接收以及分发

至此 , InputManager完成初始化. 接下来就等待/dev/input中添加设备文件.

None_Ling
发表了文章

Android Pie限制非 SDK 接口的调用

从 Android 9(API 级别 28)开始,Android对应用能使用的非 SDK 接口实施了限制。

None_Ling
发表了文章

跨进程文件锁 - FileChannel

当有多个进程或者多个应用同时操作文件时 , 会并行往文件中写入字节 , 如何保证多个进程中文件写入或者操作当原子性就很重要.

None_Ling
发表了文章

MultiDex原理

MultiDex适用于API版本在4-20的Android系统 , 即Android 2.1 - 4.4 . 而在这些版本之间 , MultiDex会通过App...

None_Ling
发表了文章

PathClassLoader加载与查找类

PathClassLoader继承自BaseDexClassLoader , 主要是把dexPath传递给BaseDexClassLoader

None_Ling
发表了文章

Java反射原理

对于Java反射而言 , 会非常耗性能 , 尤其是通过Class.forName来找到的Class对象. 主要的原理如下 :

None_Ling
发表了文章

Java并发总篇

AQS是并发基类 , 通过State以及Exclussive Thread来控制资源总数以及资源独占的线程. 通过LockSupport.park/unpar...

None_Ling
发表了文章

ReentrantLock加锁与释放过程

对于公平锁(FairSync)而言在加锁的过程中会有所不同 , 仅仅只是在申请锁的时候 , 加入了队列的判断 , 如果头节点有后继节点的话 , 则让后继节点获取...

None_Ling
发表了文章

Semaphore加锁与释放流程

与ReentrantLock的独占(Exclusive)不同的是 , Semaphore是共享类型的(Share). 也就是当资源充足的时候 , 允许多个线程获...

None_Ling

个人简介

个人成就

扫码关注云+社区

领取腾讯云代金券