c++ - VimbaCPP 内存泄漏
问题描述
我目前正在 Qt 中使用 Vimba SDK 建立一个项目。
我遵循 Vimbas 示例代码,但在捕获图像时发现内存使用量随时间缓慢增加,并发现以下行我认为导致此问题:
void AlliedVisionCameras::grabImage(cv::Mat &image){
FramePtr rpFrame;
VmbErrorType res;
uchar* pBuffer;
m_pCamera->Open(VmbAccessModeFull);
m_pCamera->AcquireSingleImage( rpFrame, 2000 );
rpFrame->GetImage(pBuffer);
image = cv::Mat(m_nHeight,m_nWidth,CV_8UC1,pBuffer)
}
我很确定它是因为 pBuffer 因为它永远不会被删除但如果我使用
uchar* pBuffer = new uchar;
.
.
delete pBuffer;
相反,我的程序崩溃了。我真的不知道如何释放指针变量并且使用 SmartPointer 不起作用,因为 getImage()-Function 无法处理它。
有人有想法吗?我在这里先向您的帮助表示感谢。
解决方案
推荐阅读
- django - Django 查询 - 如何按日期过滤总和?
- javascript - 在打印预览之前等待 window.onbeforeprint 完成 DOM 操作
- apache-nifi - 我可以使用 Minifi 从 15 个节点获取文件吗
- ansible - 如何用ansible变量中的值替换环境变量
- python - 如何使用自定义损失函数在 sklearn 中执行线性回归
- php - Laravel Eloquent 的 ->load() 回调不影响结果集
- azure - 在 Azure devops 中,我如何在 powershell 内联代码中引用特定的 azure 库组变量
- list - 如何在单独的行上打印序言列表变量的输出?
- tradingview-api - 具有 2 个条件的 Pine 脚本
- python - 在 python 中扩展列表