不断学习,做更好的自己!💪
视频号CSDN简书欢迎打开微信,关注我的视频号:KevinDev点我点我 线程 1. 定义一个基本的 CPU 执行单元 & 程序执行流的最小单元。比进程更小的可独立运行的基本单位,可理解为:轻量级进程;
组成 = 线程ID + 程序计数器 + 寄存器集合 + 堆栈;
线程自己不拥有系统资源,与其他线程共享进程所拥有的全部资源。
2. 作用减少程序在并发执行时所付出的时空开销,提高操作系统的并发性能。
3. 状态拥有类似于进程的就绪、阻塞、运行3种基本状态,状态转换的示意图如下:
定义:守护用户线程的线程,即在程序运行时为其他线程提供一种通用服务。如垃圾回收线程。 设置方式:
//设置该线程为守护线程
thread.setDaemon(true);
4.2 非守护线程(用户线程)
主要包括:主线程 & 子线程。
-
主线程 定义:Android 系统在程序启动时会自动启动一条主线程 作用:处理四大组件与用户进行交互的事情(如 UI、界面交互相关) 注意:因为用户随时会与界面发生交互,因此主线程任何时候都必须保持很高的响应速度,所以主线程不允许进行耗时操作,否则会出现 ANR。
-
子线程 定义:手动创建的线程 作用:耗时的操作(网络请求、I/O操作等)
区别:虚拟机是否已退出,即
-
当所有用户线程结束时,因为没有守护的必要,所以守护线程也会终止,虚拟机也同样退出;
-
反过来,只要任何用户线程还在运行,守护线程就不会终止,虚拟机就不会退出
是进程实体的运行过程 & 系统进行资源分配和调度的一个独立单位。
2. 作用使多个程序可并发执行,以提高系统的资源利用率和吞吐量。
3. 状态线程与进程的区别?