python多进程与并发

介绍

  • 多线程与多进程

    进程就是一个程序在一个数据集上的一次动态执行过程。

    线程的出现是为了降低上下文切换的消耗,提高系统的并发性,并突破一个进程只能干一样事的缺陷,使到进程内并发成为可能。

    通常是单个进程里包含多个线程,cpu上运行的是线程,但是python因为GUI锁导致单个进程只有一个线程,故python里没有多线程一说。

  • 并行与并发

    有些硬件只有单核处理,然而为了同时运行多个程序(例如同时打开latex和markdown软件)又不因只能按顺序执行而浪费资源故引入切换,即多个进程频繁切换产生同时运行的假象,即并发。

    并行是指多个线程同时运行,不用切换。

代码实现

  • Thread类创建

    import threading
    import time
    
    def countNum(n): # 定义某个线程要运行的函数
    
        print("running on number:%s" %n)
    
        time.sleep(3)
    
    if __name__ == '__main__':
    
        t1 = threading.Thread(target=countNum,args=(23,)) #生成一个线程实例
        t2 = threading.Thread(target=countNum,args=(34,))
    
        t1.start() #启动线程
        t2.start()
    
        print("ending!")
    
posted @ 2020-07-14 13:18  赤沙咀-菜虚坤  阅读(110)  评论(0编辑  收藏  举报