• python的线程thread笔记


      python的线程是用thread和threading来实现的。其中利用threading会更好,因为thread没有线程保护,当主线程退出了之后,子线程也会被强行退出。threading支持守护线程。

      thread中常用的方法:thread.allocate_lock() 是返回一个新的锁定的对象

                 acquire()/release()  是原始锁的两种状态,锁定和解锁,是对上面建立的锁定的对象进行的操作。

                 thread.start_new_thread(func,(func的参数))是建立一个新的线程,其中的前两个参数一定要填,如果函数不需要参数就传入一个空的元组。

      threading的使用:

    创建一个线程:

    threading.Thread(target = youfunc,args = (your func's args))

        

    start()

      开始线程活动

    join()

      等待线程终止

      所有的线程都创建了之后,再一起调用 start()函数启动,而不是创建一个启动一个。而且,不用再管理一堆锁(分配锁,获得锁,释放锁,检查锁的状态等),只要简单地对每个线程调用 join()函数就可以了。

    join()会等到线程结束,或者在给了 timeout 参数的时候,等到超时为止。join()的另一个比较重要的方面是它可以完全不用调用。一旦线程启动后,就会一直运行,直到线程的函数结束,退出为止。

     

     

     

     

    摘自虫师的博客

  • 相关阅读:
    nginx连接php fastcgi配置
    zabbix企业级监控概述和部署
    zabbix配置文件详解
    zabbix自定义键值原理
    ipvsadm命令
    lvs持久连接
    TCP协议的3次握手与4次挥手
    TCP协议的3次握手与4次挥手
    设计模式-模板模式
    设计模式-模板模式
  • 原文地址:https://www.cnblogs.com/xiaoli2018/p/4576858.html
Copyright © 2020-2023  润新知