美文网首页
线程基础知识

线程基础知识

作者: 纳兰沫 | 来源:发表于2021-07-02 13:21 被阅读0次

1.介绍

1.1定义

一个基本的CPU执行单元 程序执行流的最小单元

组成 线程ID + 程序计数器 + 寄存器集合 + 堆栈

线程自己不拥有系统资源,与其他线程共享进程所拥有的全部资源

1.2 作用

减少程序在并发执行时所付出的时空开销,提高操作系统的并发性能

2.线程分类

守护线程 非守护线程(用户线程)

2.1 守护线程

守护用户线程的线程,即在程序运行时为其他线程提高一种通用服务
如 垃圾回收线程

thread.setDaemon(true); 设置为守护线程

2.2 非守护线程(用户线程)

主线程 子线程
a. 主线程(UI线程)
Android 系统在程序启东时会自动自动一条主线程
处理四大组件与用户进行交互的事件
因为用户随时会与界面发生交互,因此主线程任何时候都必须保持很高的响应速度,所以主线程不允许进行耗时操作,否则会出现ANR
b. 子线程(工作线程)
手动创建的线程
耗时的操作

2.3 守护线程和非守护线程的区别

只要还有任何用户线程在运行,守护线程就不会终止

3.多线程的实现方式

image.png

4.线程联合

线程A在占用CPU资源期间,通过调用join()方法中断自身线程执行,然后运行联合它的线程B,直到线程B执行完毕后线程A再重新排队等到CPU资源,称为线程A联合线程B

5.进程

是进程实体的运行过程
系统进行资源分配和调度的一个独立单元
使多个程序可并发执行 以提高系统的资源利用率和吞吐量

image.png image.png image.png

相关文章

  • 线程基础知识

    线程学习 线程的基础知识 线程是什么? 线程和进程的关系 线程的6个状态 线程优先级 主线程、多线程、后台线程的概...

  • 百度iOS面试总结

    原文链接 一面 1、iOS基础知识 2、Python基础知识,大概是多线程,线程安全,集合类,JVM,类相关知识等...

  • 百度iOS面试总结

    一面 1、iOS基础知识 2、Python基础知识,大概是多线程,线程安全,集合类,JVM,类相关知识等。 3、i...

  • 多线程快速入门(第一天)

    线程基础知识 join()方法作用join作用是让其他线程变为等待, t1.join();// 让其他线程...

  • day3 线程

    线程基础知识 线程状态 线程可以有如下6中状态 New(新创建) Runable(可运行) Blocked(被阻塞...

  • Java多线程高级特性(JDK8)

    [TOC] 一、Java多线程 1.Java多线程基础知识 Java 给多线程编程提供了内置的支持。一条线程指的是...

  • iOS多线程-GCD的常见用法

    复习下线程的基础知识, 这里主要是参考文顶顶多线程篇复习写的。 1、线程间通信示例 从子线程回到主线程 2、延时执...

  • APUE读书笔记-12线程控制(1)

    1、简介 前面我们讲述了和线程以及线程同步相关的基础知识,本章我们将学习对线程的具体控制。我们会看到一些线程和线程...

  • 并发基础知识补全和CAS基本原理

    并发基础知识补全 Callable、Future和FutureTask 在前文(线程基础、线程之间的共享与协作)中...

  • iOS多线程学习笔记

    多线程的基本知识 先补一发基础知识 什么是线程 线程,有时被称为轻量级进程(Lightweight Process...

网友评论

      本文标题:线程基础知识

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