内容简介
第1章 了解并发
1.1 并发很难
1.1.1 软件中的并发
1.1.2 硬件中的并发
1.2 并发很简单
1.2.1 线程
1.2.2 原子执行
1.2.3 可视化
1.3 小结
第2章 Java并发
2.1 Java线程
2.1.1 Thread类
2.1.2 Runnable
2.2 同步
2.2.1 互斥
2.2.2 常见的同步错误
2.3 volatile
2.4 wait和notify
2.4.1 wait
2.4.2 notify
2.5 并发包
2.5.1 安全发布
2.5.2 executor
2.5.3 future
2.6 小结
第3章 Android应用程序模型
3.1 生命周期和组件
3.1.1 进程优先级
3.1.2 组件生命周期
3.2 Android应用程序作为Web应用程序
3.3 Android进程
3.3.1 应用程序启动
3.3.2 Android主线程
3.4 小结
第4章 AsyrncTask和Loader
4.1 AsyncTask体系
4.1.1 AsyncTask基础
4.1.2 AsyncTask的执行
4.1.3 AsyncTask的完成
4.2 使用AsyncTask
4.2.1 AsyncTask:被认为是危险的
4.2.2 使之正确
4.3 Loader和CursorLoader
4.4 AsyncTask:哪里出错了?
4.5 小结
第5章 Looper/Handler
5.1 Looper/Handler简介
5.1.1 Looper/Handler的基础
5.1.2 委托执行
5.2 一些细节
5.2.1 Handler和消息
5.2.2 启动Looper
5.2.3 Native Looper
5.2.4 调度和同步屏障
5.3 小结
第6章 Service、进程和Binder IPC
6.1 Service的基础知识
6.1.1 启动型Service的要点
6.1.2 绑定型Service的要点
6.2 Intent
6.3 IntentService
6.4 绑定型Service
6.4.1 一个简单的绑定型Service
6.4.2 绑定一个Service
6.4.3 解除对Service的绑定
6.4.4 绑定多个Service
6.4.5 Service的生命周期
6.4.6 优先级和标志
6.4.7 本地绑定型Service
6.5 进程间通信
6.5.1 Parcelable
6.5.2 Messenger
6.5.3 使用AIDL
6.5.4 创建进程
6.6 浅谈Binder
6.6.1 Binder线程
6.6.2 Binder数据传输限制
6.6.3 绑定到死
6.7 小结
第7章 定时任务
7.1 任务特性
7.1.1 线程安全
7.1.2 生命周期感知
7.1.3 巧妙使用进程优先级
7.1.4 电量节约
7.1.5 记分卡
7.2 Timer和TimerTask
7.3 Looper/Handler
7.4 基于自定义服务的调度程序
7.5 AlarmManager和Intent Service
7.5.1 AlarmManagerService
7.5.2 可调度的任务
7.6 同步适配器
7.6.1 定义同步适配器
7.6.2 同步适配器的工作原理
7.6.3 实现同步适配器
7.6.4 对同步适配器评分
7.7 JobScheduler
7.7.1 调度任务
7.7.2 运行任务
7.7.3 任务执行
7.7.4 对JobScheduler评分
7.8 小结
第8章 并发工具
8.1 静态分析
8.1.1 Android Studio
8.1.2 Findbugs
8.2 注解
8.2.1 JCIR注解
8.2.2 支持库注解
8.3 断言
8.4 结束语和最佳做法
参考文献