• Python 多任务(线程) day1


    多任务就是可以让一台电脑同时执行多个命令。

    以前的单核cpu是怎么做到同时执行多个命令的?(时间片轮转)

    ——其实以前的单核CPU是让操作系统交替执行命令,每个任务执行0.01秒,这样看起来就像是在同时执行多个命令。就跟手翻动画一样。

    并行:真的多任务

    并发:假的多任务

    线程

    1. 一个程序运行,一定有一个执行代码的东西,这个东西称作 《线程》
      就像光标一行一行的往下移动,执行每一行代码
      多个线程,就会出现多个光标,分为主线程和子线程
    2. 当主线程执行完所有代码,就要等子线程,当子线程执行完,主线程才能结束。(帮子线程处理垃圾)
      只有主线程结束,程序才结束。不是程序结束,主线程才结束。
    3. t1 = threading.Thread(target = sing)    应该把函数名sing给target,不能用sing(),sing()表示调用函数
      t1.start()  表示创建子线程,
      threading.enumerate()    用来获取当前所有的线程,与以前的用法不同
      线程的运行是没有先后顺序的,如果子线程没有延时,很快就执行完,那么当你调用时,获得的列表只有主线程
    4. 在创建对象时 线程没有创建
      当调用 xx.start() 时线程才创建并开始执行

    当调用的方法比较复杂时,可以把他封装成类,start会自动调用run方法,然后在run里面调用类里面的其他方法

    xx.start()只创建了一个线程,执行 run()  如果里面有其他方法,在run()调用

  • 相关阅读:
    STM32F401
    按字母顺序排列的IDC函数列表
    IDA 中文字符串
    Retrieving ST-Link/V2 Firmware from Update Utility
    IDA IDC Tutorials: Additional Auto-Commenting
    IDA resources
    Digital Current-Mode Control Challenges Analog Counterparts
    SQLSERVER 里SELECT COUNT(1) 和SELECT COUNT(*)哪个性能好?
    将ACCESS数据库迁移到SQLSERVER数据库
    RedGate 工具SQLMultiScript1.1
  • 原文地址:https://www.cnblogs.com/otome/p/12367490.html
Copyright © 2020-2023  润新知