摘要:
Android Studio是官方推出的Android开发IDE,本系列讲解Android Studio中常用的快捷键,本文是该系列的第一篇,讲解的内容是与编辑代码相关的快捷键。 本文所讲快捷键基于Android Studio2.3.3 windows版本。 本文所记录的快捷键皆亲自实践,全部可用。 阅读全文
摘要:
之前的文章,在上面建立完config之后,UIl通过 来初始化ImageLoader对象,之后就可以用ImageLoader来加载图片。 这里,采用到单例模式来获取ImageLoader对象,保证他全局初始化一次。再上面的分析中,我们可以看出单例模式的好处,创建ImageLoader对象的时候需要创 阅读全文
摘要:
UIl与Volley一样是非常古老的框架,UIL实现了从网络获取图片,对图片进行缓存,以及根据个性化的设置来将图片加载到ImageView上。 这篇文章 主要分析UIl在初始化配置的源码 UIL初始化的源码分析 UIl提供在Application中进行UIl的初始化操作,常见的初始化操作代码如下: 阅读全文
摘要:
volley关键的代码这里已经分析完了,下面梳理一下完整的Volley流程 Volley的使用从构造Request对象开始,Volley默认提供了四种request的实现,StringRequest,ImageRequest,JsonObjectRequest以及JsonArrayRequest。 阅读全文
摘要:
这篇文章主要分析网络请求和结果交付的过程。 NetWork工作原理 之前已经说到通过mNetWork.performRequest()方法来得到NetResponse,看一下该方法具体的执行流程,performRequest是一个接口方法,真正实现该方法以及被调用的是BasicNetWork,其具体 阅读全文
摘要:
NetWorkDispatcher分析 NetWorkDispatcher和CacheDispatcher一样,继承于Thread,在run方法中实现一个无限循环,代码如下 其主要的流程如下:首先从队列中取出request,然后判断该request是否取消了,如果取消就结束,然后调用network的 阅读全文
摘要:
CacheDispatcher 缓存分发 cacheQueue只是一个优先队列,我们在start方法中,分析了CacheDispatcher的构成是需要cacheQueue,然后调用CacheDispatcher.start方法,我们看一下CacheDispatcher得到cacheQueue之后, 阅读全文
摘要:
Volley源码分析 虽然在2017年,volley已经是一个逐渐被淘汰的框架,但其代码短小精悍,网络架构设计巧妙,还是有很多值得学习的地方。 第一篇文章,分析了请求队列的代码,请求队列也是我们使用Volley的关键一步。 第二篇文章会分析Dispatcher RequestQueue 创建Requ 阅读全文
摘要:
在读很多并发文章中,会提及各种各样锁如公平锁,乐观锁等等,这篇文章介绍各种锁的分类。介绍的内容如下: 公平锁/非公平锁 可重入锁 独享锁/共享锁 互斥锁/读写锁 乐观锁/悲观锁 分段锁 偏向锁/轻量级锁/重量级锁 自旋锁 上面是很多锁的名词,这些分类并不是全是指锁的状态,有的指锁的特性,有的指锁的设 阅读全文
摘要:
之前因为找实习的缘故,博客1个多月没有写了。找实习的经历总算告一段落,现在重新更新博客,这次的内容是分析Java并发包中的阻塞队列 关于阻塞队列,我之前是一直充满好奇,很好奇这个阻塞是怎么实现。现在我们先看一个该抽象类的实现类ArrayBlockingQueue。下面全部的代码均在 "github" 阅读全文