前言 从刚开始做Android开始,就时刻谨记一条规则:如果有能实现功能的Android API,就不要用Java API。所以我很少用Timer,直到前一阵一个朋友问我: ...
前言 从刚开始做Android开始,就时刻谨记一条规则:如果有能实现功能的Android API,就不要用Java API。所以我很少用Timer,直到前一阵一个朋友问我: ...
曾经我们很穷,日子很苦,每天为了生活四处奔波,那时我还小,你总是照顾我。日子虽苦,但是心里很甜。 为了改变生活,我决定离开,试着通过在外面的努力改变现在的生活。也许是真的得到...
前言 此篇文章记录日常遇到的一个小坑:Handler的removeCallbacksAndMessages没生效。 正文 需求: 需求:有1-5个超时任务,如果某个任务在规定...
11、重写Object.equals时,必须重写Object.hashcode 如果需要重写Object的equals方法,那么一定要重写hashCode方法, 否则会在哈希...
7、抛弃废弃的对象引用 当一个对象不再使用时,应该将该引用设置为null,避免该对象并不能被JVM回收。文中列出以下几种情况: 数组中的对象,使用结束后要把对应的未知的引用设...
1、考虑使用静态生产方法替代构造方法 如果某一个类拥有多个构造方法,且参数各不相同,使用静态的生产方法替代构造方法的好处: 过多的构造方法增加了使用者对于类的理解成本,并且很...
前言 沈阳刚刚入职,最近在阅读之前同事的代码,因为他的架构设计中使用了Handler模型,所以再次总结一下Handler的使用问题,这也面试的常见问题之一。 本文中可能涉及到...
@骑猪看大海_8731 分两种情况:
1、如果网络请求返回301重定向会重新发起请求
2、网络请求失败(地址错误,IO异常等)跟根据配置的次数重试;
上面的代码主要关注两处:
1、// 如果已经超过最大的网络请求追加数,释放连接,抛出协议异常
if (++followUpCount > MAX_FOLLOW_UPS) {
streamAllocation.release();
throw new ProtocolException("Too many follow-up requests: " + followUpCount);
}
2、recover方法里有介绍不能重试的几种情况;
okhttp源码解析(四):重试机制前言 这一篇我们分析okhttp的重试机制,一般如果网络请求失败,我们会考虑连续请求多次,增大网络请求成功的概率,那么okhttp是怎么实现这个功能的呢? 正文 首先还是回到...
正文 本文主要列举Java泛型与Kotlin泛型的基本知识,以及两者的区别。 什么泛型 泛型程序设计是程序设计的一种风格或或规范。简单的说就是该类型可变,在编写代码时可以根据...
自从Google官方将OkHttp作为底层的网络请求之后,作为OkHttp底层IO操作的Okio也是走进开发者的视野,这个甚至是取代了java的原生IO库的存在到底有什么特殊...
前言 本篇简单介绍Android以及Java提供了的数据并发类。 什么是锁 并发锁分为两种,一种是悲观锁synchronized,认为所有的访问都存在竞争关系,所以直接在底层...
最近CSDN的付费专栏推送通知好几次了,一直在犹豫要不要写?写些什么内容?万一写完了之后被喷了怎么办?毕竟是收费内容,文章的质量要求还是非常高的,经过一番心理斗争,决定尝试一...
前言 无论是刚刚加入Android的新人还是工作n年的老码农,如何加载一张图片到ImageView,都能轻松搞定。随着Glide的发布,我已经很久没有写过相关的代码了,最近复...
前言 此文仅分析Applcation的创建过程。 正文 如果我们要启动App,系统会创建ZygoteInit进程启动整个应用,ZygoteInit.main是整个应用启动的入...
前言 最近做项目遇到了一个很奇怪的问题,情况如下: 创建对象TestBean,其中type和name需要接口返回并解析,time字段需要客户端修改,做一些必要的记录,希望ti...
很遗憾,最近不知道为什么简书总是封了我的技术分享博客,如果你看到我的某个系列少了一篇,那肯定就是被封了,为什么被封了我也不知道。 申诉多次已经疲惫了,所以停更简书,支持的老铁...
前言 本文内容来源于《深入理解Java虚拟机》,各大电商平台均可购买。 正文 类加载的时机 类加载的整个生命周期: 加载 - 验证 - 准备 - 解析 - 初始化 - 使用 ...