![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 93
verymrq
这个作者很懒,什么都没留下…
展开
-
多线程--callable、Future、FutureTask
除了Runnable外,JAVA中还有callable、Future、FutureTask这几个线程。与Runnable不同的是,他们只能运用到线程池中,而Runnable可以使用到Thread中。一、Callable 他和Runnable功能大致相同,不同的是他有一个返回值。 他的声明如下:public interface Callable<V> {//返回V类型的结果V call()原创 2016-12-18 13:19:31 · 252 阅读 · 0 评论 -
【Android源码系列】消息机制:Handler源码解析
前言这篇文章本来应该前几天就出炉的,不过笔者当时正看得起劲,头忽然昏的不行,心想难道是撸多了?咳咳..最后脑供血不足去医院检查了一下,做了脑部CT发现很健康,这就奇怪了。后来想想应该是当时门窗都关的太严实了,刚好外面装修的甲醛充满了房间..所以各位在学习的同时一定要锻炼身体啊(好像也没啥因果关系- -),不然什么都是浮云了…. 进入正题,之前我们研究四大组件源码时,有一个H类大家印象一定很深刻(滑原创 2017-12-01 16:24:37 · 593 阅读 · 0 评论 -
【Android源码系列】如何解析APK-PackageManagerService
一、惯例BB新的一年又到了,2018也要加油啊~距离写上一篇文章也有一个月了,今天我们就来看看PackageManagerService(以下简称PMS)。 PMS和AMS、WMS一样,也是一个系统服务,他的主要作用就是解析APK信息,并保存下来。我们平时写在Manifest里的信息是如何被解析的呢?没错都是他干的。还记得我在前面一篇文章《 VirtualAPK插件化方案原理探索》里留下了一个坑:原创 2018-01-04 11:18:01 · 780 阅读 · 0 评论 -
Dagger2.1不是Dagger2
一、前言在学习android architecture components(简称acc)时下载了google官方demo,demo里有一部分是关于dagger+mvvm(mvp)+acc的,本以为阅读起来没有压力但结果却是一脸懵逼,是的,dagger的写法以及注解完全陌生。难道dagger更新了?本着落后就要挨打的原则去google了一番,发现国内资料通篇都是dagger原本的用法,并没有找...原创 2018-08-21 19:02:54 · 698 阅读 · 0 评论 -
Android性能优化神器-AspectJ
一、AOPAOP:面向切面编程(Aspect-Oriented Programming)。如果说,OOP如果是把问题划分到单个模块的话,那么AOP就是把涉及到众多模块的某一类问题进行统一管理。比如有三个模块:登陆、转账、大文件上传,现在需要加入性能检测功能,统计这三个模块每个方法耗时多少。OOP思想做法是设计一个性能检测模块,提供接口供这三个模块调用。这样每个模块都要调用性能检测模块的接...原创 2019-09-19 17:21:08 · 1072 阅读 · 3 评论