• python:线程


    线程

    1,线程与进程

    进程:执行中的程序。进程可以处理一个任务。对于一个人来说一个人就是一个进程。进程被包含着线程。

    线程:轻量级的进程。一个时间点只做一件事。一个人可以做的多件事情,每一件事情都是一个线程。

    2,线程是CPU调度的最小单位。进程是资源分配的最小单位

    3,开启线程的时空开销 都比 开启进程要小,且cpu在线程之间切换比在进程之间切换快。

    4,一个程序中 可以同时有多进程和线程

    1)调用模块开启线程

    import os
    import time
    from threading import Thread
    
    def func():    # 子线程
        time.sleep(1)
        print('hello world',os.getpid())
    thread_lst = []
    for i in range(10):
        t = Thread(target=func)
        t.start()
        thread_lst.append(t)
    [t.join() for t in thread_lst]
    print(os.getpid())   # 主线程

    2)调用类开启线程

    import os
    import time
    from threading import Thread
    
    class MyThread(Thread):
        count = 0         # 静态属性
        def __init__(self,arg1,arg2):
            super().__init__()
            self.arg1 = arg1
            self.arg2 = arg2
        def run(self):
            MyThread.count += 1
            time.sleep(1)
            print('%s,%s,%s,%s'%(self.arg1,self.arg2,self.name,os.getpid()))
    
    for i in range(10):
        t = MyThread(i,i*'*')
        t.start()
    print(t.count)
  • 相关阅读:
    学习笔记|数组的扩展
    javascript日期 时间处理类库
    v-if v-for同时使用 解决eslint报错问题
    跳出foreach循环
    live-player live-pusher惨案
    TypeError: Object(…) is not a function
    实现垂直水平居中的方法
    面试时候遇到的笔试题
    ajax跨域
    Bootstrap响应式相关
  • 原文地址:https://www.cnblogs.com/kakawith/p/8422752.html
Copyright © 2020-2023  润新知