zoukankan      html  css  js  c++  java
  • python 线程

    # THREAD 线程
    t = threading.Thread(target=test,args=('test',))
    t.setDaemon(True)#t设为守护线程,在主线程生命周期结束时结束,主线程会在其他非守护线程结束后结束,并且需要在启动前设置
    t.start()#启动线程
    t.join(10)#主线程等待子线程(t)执行10s(缺少则是线程结束)后执行
    t.setName('test')#设置线程名称
    threading.currentThread()#获取当前线程
    threading.enumerate()#枚举当前所有活跃线程


    # LOCK 互斥锁 (主要用于同步块同步)

    lock = threading.Lock()
    lock.acquire()#获取锁
    #同步块
    lock.release()#释放锁

    # EVENT 同步对象(主要用于等待其他线程通知执行时执行)

    
    
    event = threading.Event()
    event.set() #线程中设置标识符为True
    event.wait()#线程中等待标识符为True时执行
    event.clear()#线程中设置标识符为False

    # 同步块信号量

    
    
    '''
    每当调用acquire()时,内置计数器-1
    每当调用release()时,内置计数器+1
    计数器不能小于0,当计数器为0时,acquire()将阻塞线程直到其他线程调用release()。
    '''
    semaphore = threading.Semaphore(5)
    semaphore.acquire()
    # 同步块
    semaphore.release()
  • 相关阅读:
    FIDDLER的使用方法及技巧总结(连载一)FIDDLER快速入门及使用场景
    Swiper轮播插件的花式用法
    前端Js框架汇总
    前端开发06
    前端开发面试题05
    前端开发面试题04
    原生js和jquery实现图片轮播特效
    如何判断前端开发能力?
    前端面试题03
    团队冲刺09
  • 原文地址:https://www.cnblogs.com/lides/p/11183801.html
Copyright © 2011-2022 走看看