一、进程(Processes)
1。应用程序运行的时候,Android会为其开启一个Linux进程,其中含有一个单独的执行线程。然而你还可以将其安排进其他进程里或是在其他进程中产生额外的线程。
2。Manifest文件控制着组件运行在哪个进程当中。、、、这四个标签都含有“process”属性,它用来指定这个组件运行在哪个进程里。
3。process属性的功能:
(1)组件运行在各自的进程中。
(2)一些组件共享着一个进程。
(3)不同应用程序中的组件运行在相同的进程中(它们共享同一个Linux用户ID和权限)。
(4)另外标签也有个process属性,默认时:在指定进程中应用所有组件。
4。所有的组件是在指定进程中的主线程创建,也就是说当系统调用这些组件时,会去那个线程里面寻找。由于所有方法调用都在那主个线程中,难免会出现阻塞的情况(复杂的循环计算),所以开发人员可以创建额外的线程以避免这情况的发生。
5。有两种情况,Android需要强制关闭一个进程:
(1)内存不足。
(2)其他的进程需要更多的内存以响应用户需求。
6。强制关闭进程的简单原理:Android会衡量哪些进程对当前用户比较重要,以关闭那些不重要的进程。举例来说,Android更乐意关闭掉那些不在屏幕上显示的进程。因此,得出一个结论就是,这一行为取决于组件在那个进程中的状态。
二、线程(Threads)
1。用户界面应当是迅速地响应用户操作为目的,对于那些不能迅速完成的操作放进其它线程里面去工作。比如说下载功能,可以放置到后台去嘛。
2。当然,还是利用JDK中的Thread对象去创建线程,而且Android已然提供为开发人员提供好了极为便利的API用以管理线程。
三、远程方法调用(Remoteprocedurecalls)
1。Android提供了一个轻量级的机制——远程方法调用(RPCs),即:在本地方调用方法,却在远程方(其它的进程)执行它,并且将结果返回给本地。
2。调用原理:首先在本地方将这个方法调用和其携带的数据分解出来,然后从本地方进程和地址空间传输到远程方进程和地址空间;远程方会重新组装和制定方法调用;返回值则是由远程方传输回到本地方。
3。RPC接口里面的方法都是同步的,也就是说,只有远程方法执行完毕之后(如果方法没有返回值亦如此),本地调用的方法才会结束。
四、线程安全的方法(Thread-safemethods)
分享到:
相关推荐
android 进程与线程 - 开发文档翻译 - 进程
关于Android中的进程和线程文档,看完后对 Android里面的Task概念有更深的了解。
http://blog.csdn.net/qq_28690547/article/details/50375997;关于demo的文章详解,有兴趣的童鞋可以看看,解决popupwindow/dialog的BadTokenException异常
在这个移动互联网新时代里,如果应用开发者具备更多的进程和线程知识,将能有更多空间与平台软件、硬件开发者沟通,这对创造开源、开放的Android应用软件系统是非常有帮助的。
Android下线程与进程,详细可以参见博客:http://www.cnblogs.com/plokmju/p/android_ProcessOrThread.html
Android中的进程和线程,新手入门教程,希望对大家有所帮助
Android进程和线程详解.当启动一个应用程序组件时,如果该应用没有正在运行的其它程序组件,那么Android系统将为这个应用创建一个新进程(包含一个线程)用于运行应用。 当启动一个应用程序组件时,如果该应用没有...
线程进程的区别于联系,详细介绍.希望对大家有用。如果有不足的地方,麻烦留言。
安卓开发时候,绑定线程/进程到指定cpu 上面.可以直接使用一个gradle项目 直接跑起来看效果 adb shell ps -t -p -c
首先说明Android的CPU分配的最小单元是线程,Handler一般是在某个线程里创建的,因而Handler和Thread就是相互绑定的,一一对应。 而Runnable是一个接口,Thread是Runnable的子类。所以说,他俩都算一个进程。 ...
Android作为一种的、承袭Linux的移动操作系统,其进程和线程的概念是开发者和安全工作人员需要深入了解的问题。本文将详细介绍Android中的进程、线程以及相关的技术问题。 进程和线程的基本概念 当一个应用...
可保持线程日志统一输出,多线程不混乱,比如多个请求时,每个请求的日志都是同时输出,而不是掺和成你一行我一行。但是可配置性没那么灵活,如果需要
Android_进程任务线程[参照].pdf
写在前面的话 一个Android应用就是一个Linux进程,每个应用在各自...当某个应用组件启动且该应用没有运行其他任何组件时,Android 系统会使用单个执行线程为应用启动新的 Linux 进程。默认情况下,同一应用的所有组件在
android 线程交互 进程讲解 Handler Message AsyncTask 线程模式
文档介绍了引言,任务,任务亲和力(Affinities),启动模式以及启动标记,进程,线程
Android进程模型 在安装Android应用程序的时候,Android会为每个程序分配一个Linux用户ID,并设置相应的权限,这样其它应用程序不能访问此应用程序所拥有的数据和资源了。 在 Linux 中,一个用户ID 识别一个...
Android线程和进程介绍.pdf
android之间的进程和线程的通信