zoukankan      html  css  js  c++  java
  • Python随心记--进程、线程

    进程、线程:
    进程最小的资源单位
    线程属于最小的执行单元
    进程可以理解为线程的容器
    不能独立存在,建立在进程的基础之上
    一个程序至少有一个进程,一个进程至少有一个线程

    开启线程实例
    import threading
    import time
    
    def Hi(num):
        print('hello %d' %num)
        time.sleep(3)
    
    if __name__ == '__main__':
    
        t1 = threading.Thread(target = Hi,args = (10,))   #创建一个线程对象t1(子线程)
    
        t1.start()   #启动函数
    
        t2 = threading.Thread(target=Hi, args=(9,))  # 创建一个线程对象t2(子线程)
    
        t2.start()  # 启动函数
    
    
        print('ending............')
    实例
    import threading
    import time
    
    def music():
        print('start music %s' %time.ctime())
        time.sleep(3)
        print('end music %s' % time.ctime())
    
    def game():
        print('start game %s' %time.ctime())
        time.sleep(5)
        print('end game %s' % time.ctime())
    
    if __name__ == '__main__':
        '''
        t1 = threading.Thread(target=music)  # 创建一个线程对象t1(子线程)
        t1.start()  # 启动函数
        t2 = threading.Thread(target=game)  # 创建一个线程对象t2(子线程)
        t2.start()  # 启动函数
        '''
        t1 = threading.Thread(target=music)  # 创建一个线程对象t1(子线程)
        t2 = threading.Thread(target=game)  # 创建一个线程对象t2(子线程)
        t1.start()  # 启动函数
        t2.start()  # 启动函数
    
        t1.join()
        t2.join()
    
        print('ending')
    setDaemon(True)方法
        #将线程作为守护线程,必须在start()方法调用之前设置
  • 相关阅读:
    对称加密和非对称加密
    SpringMVC 请求调用过程
    Swagger2常用注解和使用方法
    玩转汉诺塔
    java序列化
    判断当前时间是否在某时间段内
    docker限制容器日志大小
    MySQL数据库备份与恢复
    MySQL事物
    MySQL用户
  • 原文地址:https://www.cnblogs.com/Essaycode/p/10325215.html
Copyright © 2011-2022 走看看