修复内存泄漏问题

This commit is contained in:
lijun 2025-01-14 23:48:31 +08:00
parent 9d48046ca5
commit 84e60f21f2
1 changed files with 10 additions and 3 deletions

View File

@ -58,17 +58,24 @@ func getVideoFrame(device proto.DeviceInfo) {
fontColor := color.RGBA{G: 255} fontColor := color.RGBA{G: 255}
lineType := 2 lineType := 2
z := 0 z := 0
var frame gocv.Mat //当前帧
defer func(frame *gocv.Mat) {
err2 := frame.Close()
if err2 != nil {
fmt.Println("设备:%d 错误: 无法关闭帧", device.ID)
}
}(&frame)
for { for {
if device.LogFrame > 0 && z%device.LogFrame == 0 { if device.LogFrame > 0 && z%device.LogFrame == 0 {
fmt.Printf("设备:%s 当前帧: %d\n", device.ID, z) fmt.Printf("设备:%d 当前帧: %d\n", device.ID, z)
} }
if device.NextStop { if device.NextStop {
break break
} }
frame := gocv.NewMat() frame = gocv.NewMat()
ok := webcam.Read(&frame) ok := webcam.Read(&frame)
if !ok { if !ok {
fmt.Printf("设备:%s 错误: 无法从视频流中读取帧\n", device) fmt.Printf("设备 错误: 无法从视频流中读取帧:", device, "\n")
break break
} }
if frame.Empty() { if frame.Empty() {