简介
进程:在Android中就是指的一个应用程序启动实例,当然一个应用程序可能是多个进程共同协作来实现的。
线程:属于进程,是程序的实际执行者。一个进程至少包含一个主线程,也可以有多个,并且线程拥有自己的栈空间。
协程:在线程的基础上,做了封装,可以在一个线程执行完后自动切换到下一个线程中。
Kotlin中的协程
比如请求一个用户名,然后再将用户名显示在一个View中,使用Java实现如下:
如果使用Kotlin中的协程则简洁很多。
这样实现的好处:代码阅读性增强,同时在请求执行完后不需要自己切回至主线程。
使用方法
启动一个协程可以使用launch
或者async
函数,闭包中是协程运行的代码块。
协程中切换线程,可以使用suspend
,然后使用withContext
传入指定线程。常用值包括了:
Dispatchers.Main
:Android主线程;
Dispatchers.IO
:IO线程,一般用于文件的读取和网络请求;
Dispatchers.Default
:适合CPU密集型的任务,比如计算;
参考
https://www.jianshu.com/p/9857dec8561c
欢迎关注微信公众号:SimFG,让我们一起学习一起进步