多线程的基本概念

<!doctype html>

多线程管理

多线程管理

进程
什么是进程

-进程是指在系统中正在运行的一个应用程序

-每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内

  • 是CPU分配资源和调度(执行任务)的最小单位

  • 同一个进程内的线程共享进程的资源。

线程
什么是进程

-一个进程(程序)的所有任务都在线程中执行

  • 线程是CPU调用(执行任务)的最小单位

-作用

  • 负责程序运行的内存分配 每一个进程都有自己的独立的虚拟空间

多线程

多线程的概念
  • 1个进程中可以开启多条线程,在同一时间,一个线程执行一个任务,CPU快速地在多条线程之间调度(切换)

  • 1个线程中任务的执行是串行的

  • 如果要在1个线程中执行多个任务,那么只能一个一个地按顺序执行这些任务

  • 也就是说,在同一时间内,1个线程只能执行1个任务

  • 总结:`要开多条线程,将耗时的操作放在子线程,主线程负责UI界面的刷新

-作用

  • 执行路径 负责程序中代码实际执行

子线程的创建于销毁

  • 当线程中的任务执行完毕后,由系统自动销毁,不需要我们销毁
多线程的原理
  • 同一时间,CPU只能处理1条线程,只有1条线程在工作(执行)

  • 1个进程中可以开启多条线程,在每个线程添加不同的任务

  • 多线程并发(同时)执行,其实是CPU快速地在多条线程之间调度(切换)

  • 如果CPU调度线程的时间足够快,就造成了多线程并发执行的假象

注意

  • 一条主线程占用内存中栈区1M, 子线程占用512KB
  • 线程不是无止境的开辟子线程

-多线程的优势:

  • 1.充分利用多核优势,将不同线程的任务分配给不同的CPU执行,进入”并行”运算

  • 2.将耗时的操作放到子线程中去执行,由主线程负责跟新主UI界面,是程序更加流畅,用户体验效果更佳

-多线程弊端 1,新建线程会消耗内存空间和CPU时间

多线程技术的本质

  • 注意:多线程技术是为了并行执行多项任务,不是提高单个算法的本身效率
原文地址:https://www.cnblogs.com/mshong1616/p/5074659.html