• 多线程的基本概念


    <!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时间

    多线程技术的本质

    • 注意:多线程技术是为了并行执行多项任务,不是提高单个算法的本身效率
  • 相关阅读:
    Guzz入门教程
    设计模式开题
    纪录idea不能创建class类问题(Cannot Create Class)
    dbrouter实现流程图
    记录一次concurrent mode failure问题排查过程以及解决思路
    程序员的自我修养
    CyclicBarrier之共享锁的理解
    sed选项详解(options)
    sed 范围查找
    Sed命令
  • 原文地址:https://www.cnblogs.com/mshong1616/p/5074659.html
Copyright © 2020-2023  润新知