Android 并发开发

更多详情

内容简介: 本书共8章,第1章介绍了一个非典型的并发模型,以后文的阐释做好铺垫。第2章和第3章分别介绍了Java并发和Android应用程序模型,主要介绍Java线程、同步、并发包、生命周期和组件、Android进程等基本概念。第4章介绍AsyncTask和Loader。第5—7章是本书的核心内容,深入探讨Android操作系统的细节,如Looper/Handler、Service、Binder、定时任务等。第8章介绍并发工具,如静态分析、注解、断言等。
本书适合有一定Android开发经验的读者参考。如果你是一名新手,建议你在掌握相关入门知识的基础上阅读本书,以达到更好的学习效果。本书给出多段代码,旨在让读者亲自实践后更好地掌握Android并发开发的相关内容。


目录: 第 1章 了解并发 1
1.1 并发很难 1
1.1.1 软件中的并发 1
1.1.2 硬件中的并发 3
1.2 并发很简单 4
1.2.1 线程 4
1.2.2 原子执行 5
1.2.3 可视化 6
1.3 小结 7
第 2章 Java并发 8
2.1 Java线程 8
2.1.1 Thread类 9
2.1.2 Runnable 10
2.2 同步 11
2.2.1 互斥 11
2.2.2 常见的同步错误 15
2.3 volatile 17
2.4 wait和notify 21
2.4.1 wait 21
2.4.2 notify 22
2.5 并发包 23
2.5.1 安全发布 24
2.5.2 executor 26
2.5.3 future 27
2.6 小结 28
第3章 Android应用程序模型 29
3.1 生命周期和组件 29
3.1.1 进程优先级 31
3.1.2 组件生命周期 33
3.2 Android应用程序作为Web应用程序 34
3.3 Android进程 35
3.3.1 应用程序启动 35
3.3.2 Android主线程 38
3.4 小结 39
第4章 AsyncTask和Loader 40
4.1 AsyncTask体系 40
4.1.1 AsyncTask基础 44
4.1.2 AsyncTask的执行 47
4.1.3 AsyncTask的完成 49
4.2 使用AsyncTask 52
4.2.1 AsyncTask:被认为是危险的 52
4.2.2 使之正确 59
4.3 Loader和CursorLoader 60
4.4 AsyncTask:哪里出错了? 68
4.5 小结 69
第5章 Looper/Handler 71
5.1 Looper/Handler简介 71
5.1.1 Looper/Handler的基础 73
5.1.2 委托执行 74
5.2 一些细节 83
5.2.1 Handler和消息 83
5.2.2 启动Looper 86
5.2.3 Native Looper 88
5.2.4 调度和同步屏障 89
5.3 小结 91
第6章 Service、进程和Binder IPC 93
6.1 Service的基础知识 93
6.1.1 启动型Service的要点 95
6.1.2 绑定型Service的要点 97
6.2 Intent 98
6.3 IntentService 101
6.4 绑定型Service 105
6.4.1 一个简单的绑定型Service 106
6.4.2 绑定一个Service 107
6.4.3 解除对Service的绑定 109
6.4.4 绑定多个Service 110
6.4.5 Service的生命周期 112
6.4.6 优先级和标志 114
6.4.7 本地绑定型Service 115
6.5 进程间通信 118
6.5.1 Parcelable 119
6.5.2 Messenger 120
6.5.3 使用AIDL 123
6.5.4 创建进程 128
6.6 浅谈Binder 130
6.6.1 Binder线程 130
6.6.2 Binder数据传输限制 130
6.6.3 绑定到死 131
6.7 小结 131
第7章 定时任务 132
7.1 任务特性 132
7.1.1 线程安全 133
7.1.2 生命周期感知 133
7.1.3 巧妙使用进程优先级 133
7.1.4 电量节约 134
7.1.5 记分卡 135
7.2 Timer和TimerTask 135
7.3 Looper/Handler 135
7.4 基于自定义服务的调度程序 138
7.5 Alarm Manager和Intent Service 139
7.5.1 AlarmManagerService 141
7.5.2 可调度的任务 145
7.6 同步适配器 148
7.6.1 定义同步适配器 149
7.6.2 同步适配器的工作原理 152
7.6.3 实现同步适配器 154
7.6.4 对同步适配器评分 159
7.7 JobScheduler 162
7.7.1 调度任务 163
7.7.2 运行任务 166
7.7.3 任务执行 168
7.7.4 对JobScheduler评分 172
7.8 小结 173
第8章 并发工具 174
8.1 静态分析 174
8.1.1 Android Studio 175
8.1.2 Findbugs 176
8.2 注解 183
8.2.1 JCIR注解 184
8.2.2 支持库注解 184
8.3 断言 185
8.4 结束语和最佳做法 186
参考文献 188