zoukankan      html  css  js  c++  java
  • 多任务-线程

    1.如今的电脑cup已经是多核了,可以实现多任务同时完成。

    但是在之前,cpu仍然处于单核状态时,同样也可以实现多任务,那么是如何完成的呢?

    其实是,让多任务交替执行,由于cpu的执行速度太快了,多以让人们看起来是同时在执行,其实只是伪多任务罢了。

    2.此时,就牵涉到了一个并行的问题,在什么样的情况下,能够实现并行?

    只有真正的在多核cpu中,才可以实现并行,但是,当任务数量远远多于核数时,操作系统就会将多任务轮流调度到多核上进行处理。

    3.并发与并行

    并发:指的是任务数多余cpu核数,通过操作系统的各种任务调度算法,实现用多个任务“一起”执行(实际上总有一些任务不在执行,因为切换任务的速度相当快,看上去一起执行而已)

    并行:指的是任务数小于等于cpu核数,即任务真的是一起执行的

    4.线程

    创建线程: t = threading.Thread(target=saySorry)  target= 的内容是我们的动作函数

    启动线程:只有当线程执行 t.start( ) , 才会创建一个线程,并开始执行

    5.多线程中,主线程和子线程的执行问题

    当多线程存在时,主线程会让子线程执行结束才会结束

    查看线程数量:length = len(threading.enumerate())

  • 相关阅读:
    电话号码和手机号码正则
    IntelliJ Idea 常用快捷键
    springboot常用注解
    idea常用快捷键和插件
    百度地图API的使用方法
    js 经常用到的键盘码
    https://www.cnblogs.com/
    axios传参 后台接收为空
    面相对象之继承
    初始面向对象
  • 原文地址:https://www.cnblogs.com/zxh1297/p/9349059.html
Copyright © 2011-2022 走看看