首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
wustor
掘友等级
Android developer
Android开发者,Python爱好者。
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
58
文章 57
沸点 1
赞
58
返回
|
搜索文章
最新
热门
并发编程(7)Intentservice源码分析
前面分析了HandlerThread源码,下面按照顺序分析IntentService的源码,IntentService是自己维护了一个线程,来执行耗时的操作,然后里面封装了HandlerThread,能够方便在子线程创建Handler。 IntentService是继承自Ser…
并发编程(5)ThreadPoolExecutor原理解析
由于线程的创建跟销毁是比较消耗资源的,也是比较耗时的。可能为了程序的需要,我们会创建很多线程,所以很有必要对线程进行一个统一的管理,所以就出现了线程池。通过线程池,我们可以重复利用一些线程资源,同时可以统一管理应用内的线程,防止内存泄露。 1.判断核心线程池里的线程是否都在执行…
并发编程(4)ConcurrentHashMap源码分析
ConcurrentHashMap,通过这个名字,可以知道Concurrent是并发的,HashMap是我们常用的一种用来存放键值对的数据结构,所以ConcurrentHashMap就是一种用来解决高并发的HashMap。这个是JDK在1.5之后提供的一种数据结构。我们知道Ja…
并发编程(3)线程同步的方式及死锁
线程本身由于创建和切换的开销,采用多线程不会提高程序的执行速度,反而会降低速度,但是对于频繁IO操作的程序,多线程可以有效的并发。 对于包含不同任务的程序,可以考虑每个任务使用一个线程。这样的程序在设计上相对于单线程做所有事的程序来说,更为清晰明了,如果是单纯的计算操作,多线程…
02.并发编程(2)Thread类源码分析
在说线程之前先说下进程,进程和线程都是一个时间段的描述,是CPU工作时间段的描述。 进程,是并发执行的程序在执行过程中分配和管理资源的基本单位,是一个动态概念,竟争计算机系统资源的基本单位。每一个进程都有一个自己的地址空间,即进程空间或(虚空间)。 线程,在网络或多用户环境下,…
在5~10分钟内我没有成功使用JitPack发布自己的Library
的都是通过library进行引用,以前也想着自己搞一个远程仓库进行依赖,直接通过gradle接入,研究了一下,现在主流的仓库大致有Maven center ,jcenter,也注册过账号,当我准备接入的时候发现了JitPack这个仓库,然后发现接入流程比较人性化,而且可以跟自己…
Gradle模块化配置:让你的gradle代码控制在100行以内
我们知道,Android Studio是利用gradle进行构建的,我们经常接触到的gradle脚本是build.gradle,build.gradle有两个,一个在project下,一个是在app目录下,随着项目的迭代,我们会在app目录下的gradle中添加很多依赖,pro…
01.并发编程(1)Java内存模型
JVM规范中试图定义一种java内存模型来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java程序在各种平台下都能达到一致的并发效果,也就是下文中要提到的Java内存模型(JMM)。 内存模型可以理解为在特定的操作协议下,对特定的内存或者高速缓存进行读写访问的过程抽象,不同…
Binder学习(四)利用AIDL、Messenger实现IPC
在每个service的生命周期中这个方法会且仅会调用一次,并且它的调用在onStartCommand()以及onBind()之前,我们可以在这个方法中进行一些一次性的初始化工作。 当其他组件通过startService()方法启动service时,此方法将会被调用。 当其他组件…
Binder学习(三)通过AIDL分析Binder通信流程
AIDL (Android Interface Definition Language) 是一种接口定义语言,用于生成可以在Android设备上两个进程之间进行PC的代码。如果在一个进程中(例如Activity)要调用另一个进程中(例如Service)对象的操作,就可以使用AI…
下一页
个人成就
文章被点赞
932
文章被阅读
106,275
掘力值
3,346
关注了
57
关注者
1,453
收藏集
3
关注标签
4
加入于
2017-05-31