进程(process),从操作系统核心角度来说,进程是应用程序的一个运行活动过程,是操作系统资源管理的实体。进程是操作系统分配和调度系统内存,cpu时间片等资源的基本单位,为正在运行的应用程序提供运行环境。一个进程至少包括一个线程。每个进程都有自己独立的内存地址空间。
线程(Thread),线程是进程内部执行代码的实体,它是cpu调度资源的最小单位,一个进程内部可以有多个线程并非运行。线程没有自己独立的内存资源,他只有自己的执行堆栈和局部变量,所以线程不能独立地执行,它必须依附在一个进程上。在同一个进程内多个线程之间可以共享进程的内存资源。
2.两种常用的多线程方式
通过继承Thread类。这是没有消息循环的线程。
AsyncTask,它封装了一些方法方便我们维护线程,并可以解决一些线程安全的问题,通过继承AsyncTask类来进行多线程编程,将使得UI thread编程变得非常简单。