当前位置: 首页 > news >正文

网站推广员怎么seo网站推广

网站推广员,怎么seo网站推广,苏州网站工作室,c#网站开发模板python线程Barrier俗称障碍对象#xff0c;也称栅栏#xff0c;也叫屏障。一.线程障碍对象Barrier简介# 导入线程模块import threading# 障碍对象barrierbarrier threading.Barrier(parties, actionNone, timeoutNone)parties — 线程计数器#xff0c;记录线程数量#x…python线程Barrier俗称障碍对象也称栅栏也叫屏障。一.线程障碍对象Barrier简介# 导入线程模块import threading# 障碍对象barrierbarrier threading.Barrier(parties, actionNone, timeoutNone)parties — 线程计数器记录线程数量也称线程障碍数量action — 是一个可调用函数当等待的线程到达了线程障碍数量parties其中一个线程会首先调用action 对应函数之后再执行线程自己内部的代码timeout — 默认的超时时间二.线程障碍对象Barrier原理与之前介绍 互斥锁Lock/事件Event/定时器Timer等不同多线程Barrier会设置一个线程障碍数量parties如果等待的线程数量没有达到障碍数量parties所有线程会处于阻塞状态当等待的线程到达了这个数量就会唤醒所有的等待线程。可能说的有点抽象以播放器为例子首先一个线程做播放器初始化工作(加载本地文件或者获取播放地址)然后一个线程获取视频画面一个线程获取视频声音只有当初始化工作完毕视频画面获取完毕视频声音获取完毕播放器才会开始播放其中任意一个线程没有完成播放器会处于阻塞状态直到三个任务都完成三.多线程障碍对象Barrier相关函数介绍wait(timeoutNone) — 阻塞并尝试通过障碍如果等待的线程数量大于或者等于线程障碍数量parties则表示障碍通过执行action 对应函数并执行线程内部代码反之则继续等待如果wait(timeoutNone) 等待超时障碍将进入断开状态如果在线程等待期间障碍断开或重置此方法会引发BrokenBarrierError错误注意添加异常处理演示代码查看案例一reset() — 重置线程障碍数量返回默认的空状态即当前阻塞的线程重新来过如果在线程等待期间障碍断开或重置此方法会引发BrokenBarrierError错误注意添加异常处理演示代码查看案例二四.线程障碍对象Barrier使用1.案例一常规使用# !usr/bin/env python# -*- coding:utf-8 _*-Author:何以解忧Blog(个人博客地址): shuopython.comWeChat Official Account(微信公众号)猿说pythonGithub:www.github.comFile:python_arbrier.pyTime:2019/10/31 21:25Motto:不积跬步无以至千里不积小流无以成江海程序人生的精彩需要坚持不懈地积累# 导入线程模块import threadingdef plyer_display():print(初始化通过完成音视频同步完成可以开始播放....)# 设置3个障碍对象barrier threading.Barrier(3, actionplyer_display, timeoutNone)def player_init(statu):print(statu)try:# 设置超时时间如果2秒内没有达到障碍线程数量# 会进入断开状态引发BrokenBarrierError错误barrier.wait(2)except Exception as e: # 断开状态引发BrokenBarrierError错误print(等待超时了... )else:print(xxxooooxxxxxooooxxxoooo)if __name__ __main__:statu_list [init ready,video ready,audio ready]thread_list list()for i in range(0,3):t threading.Thread(targetplayer_init,args(statu_list[i],))t.start()thread_list.append(t)for t in thread_list:t.join()输出结果init readyvideo readyaudio ready初始化通过完成音视频同步完成可以开始播放....xxxooooxxxxxooooxxxooooxxxooooxxxxxooooxxxooooxxxooooxxxxxooooxxxoooo注意如果barrier.wait(timeoutNone)等待超时会进入断开状态引发BrokenBarrierError错误为了程序的健壮性最好加上异常处理2.案例二重置线程障碍数量reset()# 导入线程模块import threadingdef plyer_display():print(初始化通过完成音视频同步完成可以开始播放....)# 设置3个障碍对象barrier threading.Barrier(3, actionplyer_display, timeoutNone)def player_init(statu):while True:print(statu)try:# 设置超时时间如果2秒内没有达到障碍线程数量# 会进入断开状态引发BrokenBarrierError错误barrier.wait(2)except Exception as e: # 断开状态引发BrokenBarrierError错误# print(断开状态... )continueelse:print(xxxooyyyxxxooyyyxxxooyyy)breakif __name__ __main__:statu_list [init ready,video ready,audio ready]thread_list list()for i in range(0,3):t threading.Thread(targetplayer_init,args(statu_list[i],))t.start()thread_list.append(t)if i 1: # 重置状态print(不想看爱情片我要看爱情动作片....)barrier.reset()for t in thread_list:t.join()输出结果init readyvideo ready不想看爱情片我要看爱情动作片....init readyvideo readyaudio ready初始化通过完成音视频同步完成可以开始播放....xxxooyyyxxxooyyyxxxooyyyxxxooyyyxxxooyyyxxxooyyyxxxooyyyxxxooyyyxxxooyyy注意如果barrier.wait(timeoutNone)等待超时会进入断开状态引发BrokenBarrierError错误为了程序的健壮性最好加上异常处理以上就是本文的全部内容希望对大家的学习有所帮助也希望大家多多支持聚米学院。
http://www.pierceye.com/news/687376/

相关文章:

  • 竞价页面网站做优化广告商对接平台
  • 网站后台如何修改密码wordpress调整页面布局
  • 东莞热点网站建设莱州人才网
  • 线上渠道推广网站的优化哪个好
  • 群晖可以做网站服务器微信朋友圈怎么发链接那种网页怎么制作
  • wordpress 公司网站网站和公众号的区别
  • 数据库跟网站seo流程
  • 网站首页关键词设置网站的整体风格
  • wordpress源码站整站源码制作wordpress插件
  • 海口网站建设就q479185700上墙网站空间后台怎么进入
  • 四川电子有限公司 - 手机网站如何做网站家具导购
  • 网站经营性备案修改wordpress自带小工具
  • 网站怎么建设可以发图评论网站建设制作公
  • 做销售的网站设计公司是做什么的
  • 建设专业网站的利弊海淀区seo招聘信息
  • 吴江区住房与建设局网站网站开发怎么对接客户
  • frontpage2007网站建设网站开发需要redis
  • 国内做网站多少钱ui中有哪些做的好看的网站
  • 金湖建设工程质量监督网站网页设计 网站建设 哪个好
  • 适合做外链的网站梧州论坛红豆思辨
  • 永城网站设计公司wordpress 获取父分类
  • 网站开发语言是什么东莞营销网站建设价格
  • 外贸公司访问国外网站中学生做的网站有哪些方面
  • 南城网站建设公司信息wordpress怎样显示文章全部列表
  • 做推广什么网站便宜企业网站管理系统湖南岚鸿
  • 电影下载网站 怎么做flash翻页效果网站模板
  • 社交网站开发语言河北建设工程信息网首页
  • 上海营销型网站建设公司wordpress 自己做页面
  • 网站布局选择临淄信息网手机版
  • 怎样申请网站呢注册商标怎么注册商标