• python 进程线程简单理解


    简单的理解

    1、线程:最小的执行单元;进程:最小的资源单元

    2、一个程序至少有一个进程,一个进程至少有一个线程(线程可以理解为线程的容器)

    3、进程在执行过程中拥有独立的内存单元,而多个线程共享内存

    4、每一个独立的线程都有 程序的入口,顺序执行的序列和程序出口,但是线程不能独立执行,必须由应用程序提供多个线程执行控制

    5、进程是系统进行资源分配和调度的一个独立单元

    多线程的代码开启

    import threading
    import time
    
    def sing():
        print("begin to sing            %s" % time.ctime())
        time.sleep(3)
        print("stop to sing             %s" % time.ctime())
        
    def jump():
        print("begin to jump            %s" % time.ctime())
        time.sleep(5)
        print("stop to jump             %s" % time.ctime())
        
    def rap():
        print("begin to rap             %s" % time.ctime())
        time.sleep(7)
        print("stop to rap              %s" % time.ctime())
    
    def play_basketball():
        print("begin to play_basketball  %s" % time.ctime())
        time.sleep(9)
        print("stop to play_basketball   %s" % time.ctime())
        
        
    if __name__ == '__main__':
        #开启sing的线程
        t1 = threading.Thread(target = sing)
        t1.start()
        #开启jump的线程
        t2 = threading.Thread(target = jump)
        t2.start() 
        #开启rap的线程
        t3 = threading.Thread(target = rap)
        t3.start()
        #开启篮球的线程
        t4 = threading.Thread(target = play_basketball)
        t4.start() 
    

    这样,线程开启就可以像cxk一样可以同时进行唱、跳、rap、篮球了。

    这一个程序相当于一个进程,而唱跳rap篮球就像四个线程一样,同时执行,他们的间隔时间只是间隔两秒,并不是3 5 7 9 秒

  • 相关阅读:
    江の島西浦写真館2-1
    江の島西浦写真館1-2
    Oracle 查询表空间使用情况
    Oracle 的开窗函数 rank,dense_rank,row_number
    oracle11G 用户密码180天修改概要文件过程
    CentOS6 安装 MySQL5.7
    linux下SS 网络命令详解
    CentOS6 网络设置
    redhat 6 红帽6 Linux 网络配置
    Oracle分析函数——函数列表
  • 原文地址:https://www.cnblogs.com/hyxk/p/11279104.html
Copyright © 2020-2023  润新知