zoukankan      html  css  js  c++  java
  • python 同步异步,并发并行,同步锁

    并发:系统具有处理多个任务(动作)的能力

    并行:系统具有同时处理多个任务(动作)的能力

    同步:当进程执行到一个IO(等待外部数据)的时候,需要等待,等待即同步

    异步:当进程执行到一个IO(等待外部数据)的时候,不需要等待,待数据接收成功后,再回来处理。

    GIL:全局解释锁:无论你有多少个线程,你有多少个CPU,Python在执行的时候会淡定的在同一时刻只允许一个线程运行。(解释器层面保护进程安全)

    GIL的作用:同一时刻,只有一个线程被CPU在执行,造成单线程运行结果,多核用不到。

    垃圾回收机制:解释器的一个线程在进行垃圾回收。

    CPU切换:io阻塞、cpu执行时间窗口等

    线程都是竞争CPU资源来获得执行。

    任务:io密集型(io交互多,CPU空闲时间多)、计算密集型(),time.sleep()等同于io操作

    对于io密集型任务,python的多线程是有意义的,而计算密集型任务,python的多线程就不适用了,可以采用多进程。

    同步锁:即将线程设置成串行,lock=threading.lock(),lock.acquire(),lock.release()

  • 相关阅读:
    poj 3243 Clever Y(BabyStep GiantStep)
    poj 2417 Discrete Logging
    poj 3481 Double Queue
    hdu 4046 Panda
    hdu 2896 病毒侵袭
    poj 1442 Black Box
    hdu 2815 Mod Tree
    hdu 3065 病毒侵袭持续中
    hdu 1576 A/B
    所有控件
  • 原文地址:https://www.cnblogs.com/xuchuankun/p/9403681.html
Copyright © 2011-2022 走看看