编码前线

84 篇文章
11 人订阅

全部文章

用户1205080

Java对象复制的方法

在实际编程过程中,我们常常要遇到这种情况:有一个对象A,在某一时刻A中已经包含了一些有效值,此时可能 会需要一个和A完全相同新对象B,并且此后对B任何改动都不会...

734
用户1205080

SharedPreferences解析

说明:SharedPreferences与Editor只是两个接口,SharedPreferencesImpl和EditorImp分别实现了对应的接口。另外,C...

862
用户1205080

Android应用ANR分析

在Android中,程序的响应性是由Activity Manager与Window Manager系统服务来负责监控的,当系统检测到下面的条件之一时会显示ANR...

734
用户1205080

BlockCanary原理分析

762
用户1205080

事务的概念

我们在实际业务场景中,经常会遇到数据频繁修改读取的问题。在同一时刻,不同的业务逻辑对同一个表数据进行修改,这种冲突很可能造成数据不可挽回的错乱,所以我们需要用事...

1172
用户1205080

HandlerThread解析

如果没有HandlerThread,我们在子线程中创建Handler,需要这么操作:

982
用户1205080

JAVA代码设计六大原则之单一职责

What   就一个类(接口、结构体、方法等等)而言,应该仅有一个引起它变化的原因。

651
用户1205080

IntentService解析

Step1. 定义IntentService的子类:传入线程名称、重写 onHandleIntent()方法

793
用户1205080

Lombok介绍及使用方法

Lombok 是一个 Java 库,它作为插件安装至编辑器中,其作用是通过简单注解来精简代码,以此达到消除冗长代码的目的。

1032
用户1205080

AsyncTask解析

需要进度更新: onPreExecute() --> doInBackground() --> publishProgress() --> onProgress...

611
用户1205080

BlockCanary原理分析

542
用户1205080

Android消息机制——Handler

从上面可以看出,在子线程中创建Handler之前,要调用 Looper.prepare()方法,Handler创建后,还要调用 Looper.loop()方法。...

741
用户1205080

MySQL中的锁(表锁、行锁)

锁是计算机协调多个进程或纯线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保...

742
用户1205080

Spark-RDD常用Transformationg与Action操作

RDD创建后就可以在RDD上进行数据处理。RDD支持两种操作:转换(transformation),即从现有的数据集创建一个新的数据集;动作(action),即...

812
用户1205080

Android应用ANR分析

在Android中,程序的响应性是由Activity Manager与Window Manager系统服务来负责监控的,当系统检测到下面的条件之一时会显示ANR...

962
用户1205080

Android OOM分析

2. 注意在ListView/GridView等出现大量重复子组件的视图里面对ConvertView的复用3. Bitmap对象的复用

813
用户1205080

Java原生序列化和Kryo序列化性能比较

最近几年,各种新的高效序列化方式层出不穷,不断刷新序列化性能的上限,最典型的包括:

913
用户1205080

通过虚IP保证服务高可用

高可用性HA(High Availability)指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间,以提高系统和应用的可用性。...

872
用户1205080

LeakCanary原理分析

893
用户1205080

Android内存泄漏分析

强引用:类似“Object obj = new Object()”这类的引用,只要强引用还存在,垃圾收集器永远不会回收掉被引用的对象。

934

扫码关注云+社区