1. 什么是线程池? 线程池其实就是将多个线程对象放到一个容器当中。 2. 为什么使用线程池? 可以重用线程,减少创建和销毁线程带来的消耗。 3. 如何使用线程池? 要想知道...
1. 什么是线程池? 线程池其实就是将多个线程对象放到一个容器当中。 2. 为什么使用线程池? 可以重用线程,减少创建和销毁线程带来的消耗。 3. 如何使用线程池? 要想知道...
1. 简介 Random 有两个构造方法: 其实第一个无参构造方法会默认以当前时间作为种子。那么什么是种子呢? 先来看看 Random 的 next() 方法: seed 就...
需求 需要一个箭头,连接1个View,指向(引导)另一个View 实现方案 拿到这个需求我就在想,应该如何实现会比较好。考虑到Android平台分辨率碎片化严重,单纯的XML...
1. 定义 线程安全性最重要的概念就是正确性,而正确性的意思就是这个类表现的行为要和我们的期望的行为是一致的。 这个定义可能还会有些模糊,以下用一个例子来说明。 2. 例子 ...
1. Semaphore 是什么? Semaphore 字面意思是信号量的意思,它的作用是控制访问特定资源的线程数目。 2. 怎么使用 Semaphore? 2.1 构造方法...
1. CyclicBarrier 是什么? 从字面上的意思可以知道,这个类的中文意思是“循环栅栏”。大概的意思就是一个可循环利用的屏障。 它的作用就是会让所有线程都等待完成后...
1. CountDownLatch 是什么? 从这个类的字面意思来入手,CountDown 是倒计时的意思,Latch 是门栓的意思,加起来的意思就是一个倒计时的门栓。 它其...
1. 什么是事件分发? 因为 Android 的各个 View 是层层重叠的,那么当在如下图的位置点击时,这个点击事件究竟要给谁处理呢? 这个时候就需要事件分发机制来处理了。...
我想很多人都忽略这样的问题。学习就是碰到什么吃什么,不成体系,往往遇到问题时才会觉得,天,我怎么那么多都不明白,真该好好学习的。 可是,问题又来了,自己还是不知道学什么以及怎...
前言 在Android开发中,网络请求十分常用 而在Android网络请求库中,Retrofit是当下最热的一个网络请求库 今天,我将手把手带你深入剖析Retrofit v2...
Android知识体系总结(全方面覆盖Android知识结构,面试&进阶 Version-3.0.0 时间:2020.05) 此篇文章是初中高级工程师学习文章,知识体系较为完...
前言 首先在文章开始之前,需要大家了解下我的情况我是普通本科,不是985,211。大学的时候玩联盟,打篮球,逃课,谈恋爱。总之和一般的大学生一样,没有目标和方向,每天除了上课...
Retrofit中的抽象工厂模式 前面说了项目中的设计模式 -- 简单工厂模式,为了有对比现在来理解一下抽象工厂模式,巧的是Retrofit中正好有抽象工厂模式的例子 -- ...
没耐心自己分析源码的同学,还可以参考Stay录制的视频版Retrofit分析-漂亮的解耦套路(视频版) 万万没想到Retrofit会这么火,在没看源码之前,我简单的认为是因为...
前言 在Andrroid开发中,网络请求十分常用 而在Android网络请求库中,Retrofit是当下最热的一个网络请求库 今天,我将献上一份非常详细Retrofit v2...
1. LruCache 是什么? 要搞清楚 LruCache 是什么之前,首先要知道 Android 的缓存策略。其实缓存策略很简单,举个例子,就是用户第一次使用网络加载一张...
关于Android的三级缓存,其中主要的就是内存缓存和硬盘缓存。这两种缓存机制的实现都应用到了LruCache算法,今天我们就从使用到源码解析,来彻底理解Android中的缓...