• 进程和线程的三大区别


    #创建进程的开销远大于开启线程的开销
    from threading import Thread
    from multiprocessing import Process
    import time
    def task(name):
    print('代双华吃%s '%name)
    time.sleep(3)
    print('代双华吃%s'%name)
    if __name__ =="__main__":
    # p = Process(target=task, args=('鸟屎', ))
    # p.start()
    t = Thread(target=task, args=('鸟屎', ))
    t.start()
    print('主')


    # 同一进程内的所有线程共享此进程内的地址空间
    from threading import Thread
    from multiprocessing import Process
    n = 100
    def task():
    global n
    n = 0
    if __name__ =="__main__":
    p = Process(target=task)
    p.start()
    p.join()
    # t = Thread(target=task)
    # t.start()
    # t.join()
    print('主', n)

    # 瞅PID
    # 查看进程pid
    from multiprocessing import Process, current_process #current_process只可以查看pid不可以查看ppid(父进程的pid)
    import os
    def task():
    print('子进程的PID是%s,父进程的PID是%s'%(os.getpid(), os.getppid()))
    if __name__ =="__main__":
    p = Process(target=task)
    p.start()
    print('主', os.getpid())
    # 查看线程pid(为了方便理解暂称子线程)
    from threading import Thread, current_thread #current_Thread可以查看pid同os模块的os.getpid()
    import os
    def task():
    print('子线程的PID是%s' % (os.getpid()))
    if __name__ =="__main__":
    t = Thread(target=task)
    t.start()
    t.join()
    print('主', os.getpid())


  • 相关阅读:
    asp.net 2.0 国际化 动态切换语言
    SKU、UPC、EAN和ISBN
    NCalc:处理数学运算的好帮手
    yaf 论坛安装
    Afterlogic xmail 邮局软件不能收email 设置
    要围着中心来做事
    保证Winform程序只有一个实例在运行
    可视热敏读写卡开发
    jQuery CSS 效果
    代碼小片斷
  • 原文地址:https://www.cnblogs.com/yuexijun/p/11528149.html
Copyright © 2020-2023  润新知