美文网首页
进程线程区别和通信

进程线程区别和通信

作者: 粥小新 | 来源:发表于2018-08-19 17:06 被阅读0次

基本概念

进程是系统进行资源分配和调度的独立单位。一个程序之前有一个进程,一个进程之中至少有一个线程。

线程是进程里面的实体,是cpu进程资源分配和调度的基本单位。在android中系统会给每个程序都创建主线程,也称为UI线程。

个人理解进程类似一个车间,而线程则类似流水线。每个车间里面都至少存在一条生产流水线。


进程线程区别

1个程序至少拥有一个进程,1个进程由多个线程组成,至少拥有1个线程

进程拥有独立的内存,而多个线程共享内存

线程必须依存与应用程序中

线程意义在于一个应用程序可以由多个线程同时运行,对进程进行资源调度分配

主线程与子线程间的通信

1) handel

2) AsyncTask

3) runOnUiThread

4) View 和 handler的post方法

子线程与子线程间的通信

由于主线程在应用启动的时候系统就给它生成了Looper , MessageQueue等消息循环的东西,所以每次子线程

可以直接往主线程发送message。而子线程是不会自动生成Looper的,就要调用Looper.prepare();方法来为该子线程生成Looper,

生成后调用Loopre.loop()来启动消息队列,再在子线程中定义自己的Handler,其他子线程可以调用该Handler来进行,子线程间的通信了。

进程间的通信

1) 广播

ps:出于安全考虑,发送广播的时候要设置权限,注册了该权限的接收器才能接收到广播

2) Intent

通过intent设定相应的action即可打开对应activity

3) Content pridiver

用观察者模式,通过Cursor共享数据,通讯录

4) AIDL

远程接口

5)messenger

Activity间的通信

广播

接口回调

观察者模式

第三方 rxbus、eventbus

相关文章

  • 美团C++开发面试2

    操作系统 1.进程线程区别 以及进程线程间通信 进程线程区别: 进程是程序的⼀次执行过程,是⼀个动态概念,是程序在...

  • 进程线程区别和通信

    基本概念 进程是系统进行资源分配和调度的独立单位。一个程序之前有一个进程,一个进程之中至少有一个线程。 线程是进程...

  • # iOS基础 # iOS面试题一

    基础部分 1、线程和进程有什么区别 那么,线程和进程与堆、栈之间的关系? 2、线程之间的通信 3、几个线程问题 4...

  • iOS开发——面试题1

    基础部分 1、线程和进程有什么区别 那么,线程和进程与堆、栈之间的关系? 2、线程之间的通信 3、几个线程问题 4...

  • 线程和进程概念

    线程和进程 进程 线程 线程和进程的区别

  • 操作系统

    用户模式和内核模式,都知道哪些? 生产者消费者模型 进程和线程区别?进程间通信有几种方式和各自特点?进程间通信的管...

  • 进程的同步与通信,进程与线程同步的区别,进程与线程通信的区别

    进程同步与互斥的区别? 进程的同步方式有哪些? 进程的通信方式有哪些? 进程同步与通信的区别是什么? 线程的同步/...

  • Java多线程(一)

    线程、进程的区别 进程、线程的生命周期 进程、线程的间的通信方式 多线程 3种创建方式 继承Thread类 imp...

  • iOS 网络

    说下线程和进程的区别?(要注意强调进程通信和同步) 一个程序运行后,就是一个进程,默认会开启一个线程,叫做主线程,...

  • python进线程——多进程间的通信

    1. 进程间与线程间通信区别 (1)线程间通信的类与锁在进程间是不适用的,必须使用multiprocessing中...

网友评论

      本文标题:进程线程区别和通信

      本文链接:https://www.haomeiwen.com/subject/ragciftx.html