zoukankan      html  css  js  c++  java
  • EasyNVR优化多通道情况下程序关闭的速度

    我们经常会对目前现有的视频平台做日常的功能测试和开发测试,每次在测试EasyNVR项目时需要频繁的开启和关闭。有时发现EasyNVR关闭很慢,要一分钟左右才能关闭成功,为了方便后期测试,我们决定优化这个地方。

    为了找出原因,我们在关闭的地方添加了日志打印,经过查看日志后发现在关闭程序时会先关闭所有通道,当开启的通道数量多了以后就会出现关闭缓慢的情况:

    而关闭通道的代码不是并发操作,通道只能一个一个关闭,而且也不能直接使用go启动协程关闭,因为后面的代码逻辑需要所有通道关闭完成后才能执行。

    想要达到并发操作,并且所有操作完成后在执行下一步就可以使用WaiteGroup方法,所有通道在协程中同时关闭,在所有通道关闭完成后才会继续执行后面的代码。

    修改完成后测试在启动多通道时关闭程序可以在几秒内完成,一定程度上节省了测试的时间。

    EasyNVR平台经过我们不断改良,已经支持市面上大部分的RTSP/Onvif协议设备:IP Camera/NVR/DVR/编码器等,直播便捷稳定,是安防直播解决方案中一个不错的选择。目前EasyNVR所搭建的明厨亮灶、智慧校园等系统已经在很多项目中落地,如果大家有这方面的需求,欢迎联系我们获取方案。

  • 相关阅读:
    C语言文法
    实验一
    词法分析
    py中文词频统计
    py字符串练习
    py画了个国旗
    熟悉常用的Linux操作
    大数据概述
    实验三、 递归下降分析程序实验
    简易c语言LL(1)文法
  • 原文地址:https://www.cnblogs.com/EasyNVR/p/15607646.html
Copyright © 2011-2022 走看看