前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >EasyDSS采用Golang指针问题导致平台重复推流的优化方法

EasyDSS采用Golang指针问题导致平台重复推流的优化方法

原创
作者头像
TSINGSEE青犀视频
修改2021-11-02 17:39:40
4650
修改2021-11-02 17:39:40
举报
文章被收录于专栏:TSINGSEE青犀视频

我们的团队在研发视频流媒体平台的时候,用到最多的就是Go语言。之前也和大家交流过关于Go语言的指针问题和应用,大家有兴趣可以了解一下:视频流媒体平台编译中如何运用Go语言指针?

在对EasyDSS的编译中,我们发现Golang指针问题会导致系统内的重复推流。Golang遍历切片代码如下:

在for循环里,最终遍历结束后VliveStart(vlive.ID,false,nil)方法中vlive会指向最后一个地址,因此会出现重复推流问题。

针对这个问题,我们提出了两个方案:

1、将原始切片vlives修改为存放指针,这样在遍历时vlive实际存放的是该位置的实际指针。 2、用变量来赋值,再将复制后的变量地址放到协程中。

在编译EasyDSS过程中,我们采用了第二种方法,优化后代码如下:

EasyDSS视频平台作为一套网页视频流媒体平台,观看视频推流直播无需安装插件,网页直接即可播放。近期我们已经更新了系统的内核,在性能上也会有进一步的提升。我们欢迎大家对我们提出改进建议,也欢迎大家对测试版本的试用,如有需求,欢迎了解。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云直播
云直播(Cloud Streaming Services,CSS)为您提供极速、稳定、专业的云端直播处理服务,根据业务的不同直播场景需求,云直播提供了标准直播、快直播、云导播台三种服务,分别针对大规模实时观看、超低延时直播、便捷云端导播的场景,配合腾讯云视立方·直播 SDK,为您提供一站式的音视频直播解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档