Compare commits

..

2 Commits

Author SHA1 Message Date
lijun ea963f4076 获取当前帧bytes,垃圾回收 2025-01-23 23:06:31 +08:00
lijun 6bdaeaf017 获取当前帧bytes,垃圾回收 2025-01-23 23:03:37 +08:00
1 changed files with 7 additions and 2 deletions

View File

@ -11,6 +11,7 @@ import (
"io" "io"
"log" "log"
"net/http" "net/http"
"runtime"
"strconv" "strconv"
"time" "time"
) )
@ -194,11 +195,13 @@ func subscribeAndHandleMessagesV3(ws *websocket.Conn, deviceId int) {
count := 0 count := 0
//定时器,发送计数器 //定时器,发送计数器
tCount := 0 tCount := 0
var buf []byte
//计算帧率 //计算帧率
for { for {
//从service获取当前帧 //从service获取当前帧
buf, c := service.GetDeviceCurrentFrameV4(deviceId, count) newBuf, c := service.GetDeviceCurrentFrameV4(deviceId, count)
if c != count { if c != count {
buf = newBuf
count = c count = c
err2 := ws.WriteMessage(websocket.BinaryMessage, buf) err2 := ws.WriteMessage(websocket.BinaryMessage, buf)
if err2 != nil { if err2 != nil {
@ -220,7 +223,6 @@ func subscribeAndHandleMessagesV3(ws *websocket.Conn, deviceId int) {
} }
} }
} }
buf = nil
time.Sleep(100 * time.Millisecond) time.Sleep(100 * time.Millisecond)
tCount++ tCount++
} }
@ -230,4 +232,7 @@ func subscribeAndHandleMessagesV3(ws *websocket.Conn, deviceId int) {
worker.SetRedisWithExpire(strconv.Itoa(deviceId)+"_is_play", "1", time.Minute*5) worker.SetRedisWithExpire(strconv.Itoa(deviceId)+"_is_play", "1", time.Minute*5)
log.Printf("device_id: %d has set is_play to 0", deviceId) log.Printf("device_id: %d has set is_play to 0", deviceId)
} }
//垃圾回收
runtime.GC()
} }