Android线程与进程

原创 2016年08月29日 15:26:54

问题

前几天遇见了一个android线程间通信的问题,可怜的我只知道应用层的常见方式,对Linux系统的线程间通讯却不是很了解。

Linux中的线程与进程

Linux在最初是不支持线程的,资源管理的单位是进程,线程思想的出,Linux用实现进程的方式,实现了进程。有一种说法时Linux并不存在严格上的进程与线程的区分。(这部分结论参考自网上的博客,想要深入了解需要看Linux内核的代码)

Linux中的线程与进程通信

其实作为一个程序员理解问题要了解到本质,现在所有的代码,实质上都是计算机硬件提供的加减乘除,存取功能的组合代码。这些组合代码配合上优秀的计算机思想加上大牛们对某些问题的解决方案就形成了软件行业的大千世界。

进程间的通讯

进程间的有很多方法,其实就对应了不同的解决方案。这里只说一种来回应文章最开始提出的问题。这种方式就是——管道。

其实如果没有这种解决方案你自己设计,你会如何处理呢。进程中不共享资源,但是他们在一个系统中执行,自然想到有一个文件来进行中转数据啊。So管道就是这么实现的,当然他的稳定性很高,自然少不了大牛们的修饰和完善,但解决方案的根本就是这个。所以很多看似高深的东西,都是一种巧妙但是并不复杂的解决方案的支撑。当然有些数学算法除外(那是真要智商啊)。

其中有一个问题就是他们之间都不知道这个文件是在哪啊,Bingo!所有进程之间通信依赖于命名管道,简单理解就是一个大家都是知道的文件名,大家来查找它。

虽然管道是文件但是其实他是独立于系统本身的文件系统。(说简单点就是为了通信定制的文件)

说了这多,课

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Android的进程,线程模型

Android 包括一个应用程序框架、几个应用程序库和一个基于 Dalvik 虚拟机的运行时,所有这些都运行在 Linux 内核之上。 通过利用 Linux 内核的优势,Android 得到了大量操...

Android中的进程和线程

  • 2016-02-20 19:23
  • 499KB
  • 下载

android中的进程与线程的理解

一个android应用就是一个Linux进程,每个应用在各自的进程中运行,互不干扰,比较安全。 一个应用对应一个主线程,就是通常所说的UI线程,android遵守的就是单线程模型,所以说Ui操作不是...

Android API Guides 之 进程 线程 [译]

进程和线程 如果某个应用程序组件是第一次被启动,且这时应用程序也没有其他组件在运行,则Android系统会为应用程序创建一个包含单个线程的linux进程。默认情况下,同一个应用程序的所有组件都运行在...

Android进程和线程

当某个应用组件启动且该应用没有运行其他任何组件时,Android 系统会使用单个执行线程为应用启动新的 Linux 进程。默认情况下,同一应用的所有组件在相同的进程和线程(称为“主”线程)中运行。 如...

Android API 指南, 线程和进程

概述: 在android 系统中,当应用启动的时候, android 系统会使用单个执行线程为应用启动新的 Linux 进程。默认情况下,同一应用 的所有组件在同一个的进程和线程(称为“主”线程)...

[android基础知识] 之二: 任务、进程和线程的区别

android 中 任务、进程和线程的区别 任务、进程和线程     关于Android中的组件和应用,之前涉及,大都是静态的概念。而当一个应用运行起来,就难免会需要关心进程、线程这样的概念。...

Android基本概念: 应用, 任务, 进程, 和线程

在大多数操作系统里,存在独立的一个1对1的可执行文件(如Windows里的exe文件), 它可以产生进程,并能和界面图标、应用进行用户交互。但在Android里,这是不固定的,理解将这些分散的部分如何...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)