美文网首页
IOS 进程、线程与多线程的基本概念和个人理解

IOS 进程、线程与多线程的基本概念和个人理解

作者: 迷程 | 来源:发表于2021-09-10 09:33 被阅读0次

进程:
        官话:具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。
        个人:执行程序需要将其装载到内存中,分配一定的资源(内存,I/O),以执行此程序,基于此,可以说一个进程是一次执行过程中的程序,是动态的。操作系统进行资源分配的时候只分配到进程,这就是独立单位的意思。

        特点:进程之间是独立的,每个进程独立运行在系统分配的特定内存空间中,有一切必须的资源去完成执行过程.多进程在IOS中可能存在于系统中。

线程:
        官话:线程是程序执行流的最小单元,线程是进程中的一个实体,进程的所有任务都在线程中执行,线程是 CPU 分配资源和调度的最小单位.

        个人:进程分配到资源,需要线程去具体执行操作,线程因为进程存在而存在,因进程结束而结束,一个进程至少有一个主线程。进程和线程是一对多的关系,一个进程可以对应不止一个线程,一个线程只能对应一个进程。

联系:
        1.线程是进程具体执行单元,所有进程的任务都要通过线程来实现。
        2.一个程序可以有多个进程(多进程),一个进程可以有多个线程,而且至少必须有一个线程。
        3.同一进程内的线程共享进程资源,单个线程的崩溃不必然导致进程的崩溃,除非其他线程访问该崩溃线程的内存。
区别:
        1.进程独享地址空间,线程则与同一进程下的其他线程共享地址空间。
        2.进程因为其独立性,在保护模式下,即使崩溃也不会对其他进程产生影响。而线程的崩溃则可能会导致其他线程崩溃,IOS中主线程的崩溃导致整个进程崩溃。
        3.线程是处理器调度的基本单元,进程不是。
        4.线程切换的速度要比进程快得多,因为其资源开销小得多。
        5.在IOS中,因为线程之间共享全局变量、静态变量,因此线程之间的通讯要比进程方便很多。
        6.线程基于进程存在而存在,因此进程可以单独执行,线程则必须依赖于进程而执行。
多线程:
        官话:一个进程可以同时执行多个线程,这些线程之间并发执行,完成不同的任务。
        个人:一个程序需要同时处理不同的任务,而这些任务可以并发执行,通过创建多个线程来同时执行任务,提高程序的执行效率,避免等待。
        优点:
              1.提高程序执行效率,减少无谓等待,
              2.多线程可以提高资源的利用率(CPU,内存等等)。
        缺点:
              1.提高程序复杂度。
              2.因为线程之间共享资源,因此一旦多个线程需要访问同一个资源时,很可能会带来数据错乱和数据丢失等安全问题,容易得不偿失,虽然互斥锁可以在一定程度上解决这个问题,但是会提高CPU消耗。

相关文章

  • iOS_进程与线程(多进程与多线程)

    iOS_进程与线程(多进程与多线程)

  • 高并发多线程总结

    1.多线程基本概念 首先,我们要理解多线程编程,必须清楚几个基本概念:进程——进程是操作系统层面的概念,它是操作系...

  • 多线程之NSThread/GCD/NSOperation

    概述及基本概念1.进程和线程2.多线程3.任务4.队列5.iOS中的多线程技术6.GCD和NSOperationQ...

  • IOS 进程、线程与多线程的基本概念和个人理解

    进程:官话:具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。个...

  • OC-底层原理 23:多线程原理

    本文的目的在于了解进程、线程、多线程、线程池等的基本概念及原理 线程 和 进程 线程和进程的定义 线程 线程时进程...

  • iOS 多线程原理

    本文的目的在于了解进程、线程、多线程、线程池等的基本概念及原理 线程 和 进程 线程和进程的定义 线程 线程时进程...

  • IOS2

    一、进程和线程:什么是进程? 什么是线程? 多线程原理? 二、多线程 iOS中多线程实现方案: 1.pthread...

  • iOS底层原理24:多线程原理

    本文的目的在于了解进程、线程、多线程、线程池等的基本概念及原理 线程和进程 线程和进程的定义 线程 线程是进程的基...

  • iOS-底层原理23:多线程

    本文的目的在于了解进程、线程、多线程、线程池等的基本概念及原理 1 线程 和 进程 1.1 线程 和 进程的定义 ...

  • 1.多线程基础(一)基础中基础

    1.前言 进程,线程和任务的基本概念的概括图 进程: 线程: 线程的串行: 线程和进程的区别: 多线程的优缺点: ...

网友评论

      本文标题:IOS 进程、线程与多线程的基本概念和个人理解

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