ZBLOG

for (int i = 0; i < numCores; i++) { // TODO(zzz): multithread auto decodeImages = std::thread([&]() { while (true) { std::vector tmpVec; { std::unique_lock lck(m_mutex); ...

根据代码和错误提示,我发现几个问题:

  1. std::vector<std::vector<bev_data>> tmpVec 的类型应为 std::vector<std::vector<BevDataStruct>>,而不是 std::vector<std::vector<bev_data>>。请确保类型一致。

  2. 在下面的循环中,你使用了 compareData 函数进行排序:std::sort(vec.begin(), vec.end(), compareData)。请确保该函数已经定义或者实现,并且与排序需要的条件相匹配。

  3. 根据错误提示,cv::imdecode() 函数无法正确调用。检查是否包含了正确的 OpenCV 头文件并链接了相应的库文件。

  4. m_condition.wait() 应在一个循环中使用,并满足某种条件时才能继续执行,否则可能导致程序永久阻塞。

  5. 最后,在主线程中使用 usleep(100000) 可能会导致不必要的延迟。可以考虑使用适当的同步机制来等待线程完成任务。

注意,请仔细检查所有代码,并确保变量、函数和头文件的命名和引用都是正确的。如果还有其他报错信息,请提供详细信息以便更好地帮助你解决问题。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=14520

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?