• 进程,子进程,线程,协程


    进程:

            狭义:进程就是正在运行的程序

            广义:它是操作系统进行资源分配的基本单位,也就是说每启动一个进程,操作系统都会给                       其分配一定的运行资源(内存资源)保证进程的运行

    程序:        

            程序时一个没有生命的实体,等待处理器赋予生命,一旦程序有了生命就变成了进程

    进程与程序的区别

            1.程序是指令和数据的有序集合,其本身没有任何含义,是一个静态的资源,进程是程序在              系统中的依次执行过程

            2.程序可以作为软件长期存在,进程是由一定生命周期

    进程的状态

     进程的三种状态:

            就绪态:运行的条件都易筋经满足正在等待CPU执行

            执行态:CPU正在执行其功能

            等待态:等待某些条件满足

    并行:同一时刻,多个任务同时执行               例:12点放学吃饭

    并发:同一时间(时间段),多个任务同时执行        例:12点到1:40是吃饭时间

    并发与并行的区别:

            微观:并行是指同一时间点上,多个任务真正的同时执行

            宏观上:并发市值在一个时间段内,多个任务走走停停

    创建进程

    1. #创建一个进程
    2. import time
    3. #进程的导包
    4. import multiprocessing
    5. def test1():
    6. while True:
    7. print("1---------")
    8. time.sleep(1)
    9. def test2():
    10. while True:
    11. print("2------")
    12. time.sleep(1)
    13. def main():
    14. #分别创建test1test2个进程
    15. p1 = multiprocessing.Process(target=test1)
    16. p2 = multiprocessing.Process(target=test2)
    17. #启动 p1 和 p2
    18. p1.start()
    19. p2.start()
    20. #程序入口
    21. if __name__ == '__main__':
    22. main()

    创建线程

    1. import threading, time
    2. def fun1():
    3. for i in range(5):
    4. print("唱歌...")
    5. time.sleep(1) # 休眠1s
    6. def fun2():
    7. for i in range(5):
    8. print("跳舞...")
    9. time.sleep(1) # 休眠1s
    10. if __name__ == "__main__":
    11. # t1 t2 变量名
    12. t1 = threading.Thread(target=fun1) # 创建线程1 执行fun1
    13. t2 = threading.Thread(target=fun2) # 创建线程2 执行fun2
    14. t1.start() # 启动2个线程
    15. t2.start()
    16. print("主线程结束")

  • 相关阅读:
    【Angular】10路由
    080|为什么阿里的价值观值得你关注?
    springcloud和基础服务的搭建以及封装
    15812字教你从零入门node.js(基础篇)
    知识点总结 2022-8-15
    数学建模——人工神经网络模型
    智能电网短路故障接地故障模拟柜
    Leetcode—2731.移动机器人【中等】
    C/C++ 快速入门
    Linux系统性能监控分析工具perf
  • 原文地址:https://blog.csdn.net/lizhenqi123456/article/details/126733217