sxl_88
sxl_88
采纳率50%
2015-03-27 12:17 阅读 3.1k

C# Winfrom项目,运行程序一段时间后提示“存储空间不足,无法处理此命令”的报错信息。

在C# Winfrom项目,有一个timer计时器控件(设置每隔6分钟调用其它六个监控视频图像放到对应的Panel控件)

目前遇到的问题是,监控点的视频图像有的由于网络好点显示加载视频图像快点,有的由于网络不是太好加载显示视频图像慢点。
在form窗体运行一段时间后,提示“存储空间不足,无法处理此命令”的报错信息。
发现在这个时间段内,电脑内存的使用率为40%至50%左右。

请问如何修改下面的代码可以解决此问题?谢谢!

附创建显示监控视频图像的代码:

void PlayMon(string name, int width, int height, Panel pl, string[] monitorarray) //创建播放监控视频的组件
{
foreach(Control ctl in pl.Controls)
{
ctl.dispose() //内存释放,不过貌似释放不了内存。这个地方还有其它方法可以释放内存?
}

        pl.Controls.Clear();
        PlayerMon.PlayerMon ocm = new PlayerMon.PlayerMon();
        ocm.Name = name.ToString();
        ocm.Width = width;
        ocm.Height = height;
        ocm.Top = (pl.Height - ocx.Height) / 2;
        ocm.Left = ((pl.Width - ocx.Width) / 2)-1;

        ocm.Play(monitorarray[0], monitorarray[1], monitorarray[2], monitorarray[3], monitorarray[5], monitorarray[6], monitorarray[4], monitorarray[7], "rtsp", monitorarray[10], monitorarray[11], monitorarray[0], monitorarray[1], "HIK-DS8000HC", monitorarray[5], monitorarray[5], monitorarray[2], monitorarray[3], "av_stream", monitorarray[8], monitorarray[12], monitorarray[14]);
        pl.Controls.Add(ocx);

    } 
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

相关推荐