Kuekua-seu 2014-11-28 03:07
浏览 729

MFC中视频流内存泄漏问题

void CHLDlg::OnBnClickedOpen()
{
// TODO: 在此添加控件通知处理程序代码
CFileDialog dlg(TRUE,NULL,NULL,NULL,NULL);
pCapture = NULL;
if(dlg.DoModal()==IDOK)//
{
PathName = dlg.GetPathName();
FileName = dlg.GetFileName();
}
else
{
return;
}

c=(LPCSTR)PathName;
pCapture = cvCaptureFromFile(c);

video_fps=(int)cvGetCaptureProperty(pCapture,CV_CAP_PROP_FPS);

hThread2 = CreateThread(NULL,0,Wavedisplay,(LPVOID)this,0,NULL);

}

DWORD WINAPI CHLDlg::Wavedisplay(LPVOID lpParam)
{
CHLDlg *p=(CHLDlg *)lpParam;
p->SetTimer(1,(int)(1000/p->video_fps),NULL);
return 0;
}

void CHLDlg::OnTimer(UINT_PTR nIDEvent)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CDialogEx::OnTimer(nIDEvent);

if(1==nIDEvent)
{

    Frame_Img = cvQueryFrame( pCapture );

}

}

程序如上,变量都封装在CHLDlg类里面,析构函数里将它们一一释放,为什么程序运行后内存一直以每秒8kb的速度上升?

  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥15 素材场景中光线烘焙后灯光失效
    • ¥15 请教一下各位,为什么我这个没有实现模拟点击
    • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
    • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
    • ¥20 有关区间dp的问题求解
    • ¥15 多电路系统共用电源的串扰问题
    • ¥15 slam rangenet++配置
    • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
    • ¥15 ubuntu子系统密码忘记
    • ¥15 保护模式-系统加载-段寄存器