zoukankan      html  css  js  c++  java
  • (12)多线程的创建

    # (1) 一个进程可以有多个线程

    一个进程至少有一个线程

    #(2) 并发多线程和多进程的速度对比 多线程更快

    #(3) 多个线程共享同一份进程资源

    #(4)setDaemon 守护线程:等待其他所有子线程结束之后,自动结束

    语法;线程.setDaemon(True)

    线程相关函数

    语法:

    from threading import Thread

    from threading import currentThread

    from threading import enumerate

    from threading import activeCount

    线程.is_alive() 检测线程是否仍然存在

    线程.setName() 设置线程名字

    线程.getName() 获取线程名字

    currentThread().ident 查看线程id号

    enumerate() 返回目前正在运行的线程列表

    activeCount() 返回目前正在运行的线程数量

     #(5)创建10个子线程

    from threading import Thread,current_thread as ct
    def func(i):
        print("子线程:", i,ct().ident)
    lis = []
    for i in range(10):
        t = Thread(target=func, args=(i,))
        t.start()
        lis.append(t)
    for t in lis:
        t.join()
    print('主线程',ct().ident)
    View Code

    执行结果:

    子线程: 0 6412
    子线程: 1 6284
    子线程: 2 4448
    子线程: 3 6264
    子线程: 4 6964
    子线程: 5 6868
    子线程: 6 6832
    子线程: 7 6664
    子线程: 8 6772
    子线程: 9 5344
    主线程 5264
    View Code

     

     

     

  • 相关阅读:
    52、saleforce 第一篇
    nodejs自定义模块
    NodeJS require路径
    Angularjs ngTable使用备忘
    HTML5拖拽功能中 dataTransfer对象详解
    Javascript闭包深入解析及实现方法
    Grunt实例
    Grunt插件uglify
    javascript 将字符串当函数执行
    多个springboot项目部署在同一tomcat上,出现jmx错误
  • 原文地址:https://www.cnblogs.com/lyj910313/p/10787306.html
Copyright © 2011-2022 走看看