首页 / 操作系统 / Linux / 简单解释Android中的任务、进程和线程
一、任务要解释什么是Android中的任务,需要提到应用程序(application)和Activity。Activity:Android中最基本的应用程序组件。一个Activity通常就是一个单独的屏幕,用于呈现数据和与用户进行交互。应用程序:比如说qq软件就是一个应用程序,通常由多个Activity组成。有了上面两个概念,就可以很好理解任务了。一个Android任务通常会涵盖多个Activity,而这些Activity可能分别属于不同的应用程序(application)。从Activity的角度来说,任务就是Activity的堆栈。Activity和任务那点事儿Activity和任务的关联、任务中Activity的行为方式都被启动那个Activity的Intent对象中设置的一系列flags和manifest文件中Activity的<Activity>元素的一系列属性之间的交互所控制。intent flags:FLAG_ACTIVITY_NEW_TASKFLAG_ACTIVITY_CLEAR_TOPFLAG_ACTIVITY_RESET_TASK_IF_NEEDEDFLAG_ACTIVITY_SINGLE_TOP<Activity>属性:taskAffinitylaunchModeallowTaskReparentingclearTaskOnLaunchalwaysRetainTaskStatefinishOnTaskLaunch启动任务:当一个Activity指定了一个”android.intent.action.MAIN“作为动作、”android.intent.category.LAUNCHER“作为类别的intent过滤器时,它会被设置为一个任务的入口点。如果不想让用户再次返回一个Activity,将finishOnTaskLaunch设置为”true“二、Android进程组件运行所在的进程由manifest文件来控制。组件元素如<Activity>、<service>、<receiver>、<provider>都有一个进程属性来指定组件应当运行于哪个进程之内。<Application>元素也有一个进程属性,设定所有组件的进程属性默认值。三、Android线程Android线程在代码中以标准的java thread对象创建。Android提供了很多便于管理线程的类:looper用于在线程中运行一个消息循环,handler用于处理消息,handlerthread用于使用一个消息循环启用线程。其实android进程和线程和在linux里没有什么区别。