草庐IT

avcodec_alloc_context

全部标签

c++ - std::allocator<T>::deallocate 的第二个参数的目的是什么?

Inhere是释放内存的声明。分配器类。我的问题是这个声明中的第二个参数是什么?如果此函数调用operatordelete(_Ptr),则此参数未被使用,那么它在那里有什么用?谢谢。摘自MSDN:从指定位置开始的存储中释放指定数量的对象。voiddeallocate(pointer_Ptr,size_type_Count);参数_Ptr指向要从存储中释放的第一个对象的指针。_计数要从存储中释放的对象数。 最佳答案 当您调用deallocate时,您必须给它一个您之前通过调用allocate获得的指针以及您传递给allocate的大小

c++ - std::tr1::shared_ptr 是否会抛出 bad_alloc 并且在 try/catch block 中是个好主意?

我实际上正在制作一个简单的C++SFML游戏,我想学习更多关于C++编程的知识。现在我正在使用shared_ptr来管理资源。创建新资源时,我对shared_ptrs有一些疑问,例如:shared_ptrresource(newResource(World::LEVEL));根据boostshared_ptr(Y*p)throwsbad_alloc。我不知道std::tr1是否也这样做。而且我不知道我是否应该担心将shared_ptr放入try/catchblock中以检查是否抛出bad_alloc。这是一个好的编程习惯吗? 最佳答案

已解决org.springframework.context.NoSuchMessageException异常的正确解决方法,亲测有效!!!

已解决org.springframework.context.NoSuchMessageException异常的正确解决方法,亲浔有效!!!文章目录问题分析报错原因解决思路解决方法总结问题分析当我们在使用Spring框架开发国际化应用时,通常会用到MessageSource接口来获取本地化信息。有时候,我们可能遇到一个org.springframework.context.NoSuchMessageException异常。这个异常表明请求的特定消息在当前的语言环境中不存在。场景示例:在一个标准的SpringBootWeb应用程序中,我们可能通过MessageSource来获取用户界面上显示的文

c++ - 线程构造的性能成本 : missed optimisations and memory allocation

我们遇到了一种奇怪的现象,其中包含头文件会导致某些内存分配密集型工作负载的性能下降5-10%。这个头文件将一个线程池声明为一个全局变量。该线程池从未在应用程序中以任何容量(还)使用过。也就是说,除了在程序启动时创建这个静态线程池外,应用程序完全是单线程的。一旦标题被移除,性能损失就会消失。从一些研究来看,由于某些编译器优化不再可能,多线程应用程序似乎会导致一些性能损失。每当以任何形式或容量实例化与线程相关的构造时,是否有可能关闭此类优化?或者,由于在执行大量内存分配时性能损失似乎最为明显,编译器是否有可能在编译/链接阶段意识到线程构造已实例化,因此它切换到线程安全内存分配器?这发生在L

已解决org.springframework.context.ApplicationContextException异常的正确解决方法,亲测有效!!!

已解决org.springframework.context.ApplicationContextException异常的正确解决方法,亲测有效!!!文章目录问题分析报错原因解决思路解决方法步骤1:检查异常细节步骤2:验证外部依赖步骤3:校验Spring配置步骤4:核查资源路径步骤5:调整日志级别步骤6:测试和验证步骤7:利用SpringBootDiagnostics步骤8:交叉验证环境设置总结在使用Spring框架构建应用程序时,ApplicationContextException是开发人员可能会遭遇的一个挑战。这个异常通常标识着应用程序上下文初始化过程中出现了问题,阻碍了Spring容器

c++ - 为什么我会收到 CL_MEM_OBJECT_ALLOCATION_FAILURE?

我在GPU上分配一个cl_mem缓冲区并对其进行处理,在超过一定尺寸之前效果很好。在那种情况下,分配本身会成功,但执行或复制不会。我确实想使用设备的内存来加快操作速度,所以我分配如下:buf=clCreateBuffer(cxGPUContext,CL_MEM_WRITE_ONLY,buf_size,NULL,&ciErrNum);现在我不明白的是大小限制。我正在复制大约16MB,但应该可以使用大约128MB(参见CL_DEVICE_MAX_MEM_ALLOC_SIZE)。为什么这些数字相差如此之大?这是oclDeviceQuery的一些摘录:CL_PLATFORM_NAME:NVID

c++ - 函数不会抛出 bad_alloc 异常

我正在尝试从Stroustrup的C++PL4书中做一个练习。任务是:Allocatesomuchmemoryusingnewthatbad_allocisthrown.Reporthowmuchmemorywasallocatedandhowmuchtimeittook.Dothistwice:oncenotwritingtotheallocatedmemoryandoncewritingtoeachelement.以下代码不会抛出std::bad_alloc异常。执行程序后,我在终端中收到消息“Killed”。还有。以下代码在~4秒后退出。但是当我取消注释内存使用消息时//++i;

C++ std::bad_alloc 错误

我正在开发C++程序(C++98)。它读取一个包含很多行(10000行)的文本文件。这些是制表符分隔值,然后我将其解析为Vector对象的Vector。然而,它似乎适用于某些文件(较小),但我的一个文件给我以下错误(该文件有10000行,大小为90MB)。我猜这是一个内存相关的问题?你能帮帮我吗?错误terminatecalledafterthrowinganinstanceof'std::bad_alloc'what():std::bad_allocAbort代码voidAppManager::go(stringcustomerFile){vector>vals=fileReader

c++ - FFmpeg 使用 avcodec_decode_video2 解码原始缓冲区

我正在接收一个h264流,其中我至少知道一帧的大小。流正在进入,因为我可以将它存储在一个文件中并使用vlc播放。回放文件对我来说没有问题,因为我包含了libavformat。但是libavformat给了我一个AVPacket,我可以直接给avcodec_decode_video2。在这种情况下,我得到了一个字节流。如何将原始h264流提供给avcodec_decode_video2?如何将我的数据包装到AVPacket中。VLC不需要猜测任何数据。 最佳答案 解码流或多或少容易。这段代码非常适合我:classffmpegstrea

c++ - 为什么我得到 "cannot allocate an array of constant size 0"?

这个问题在这里已经有了答案:WhathappensifIdefinea0-sizearrayinC/C++?(8个答案)关闭8年前。我正在为学校做一个扫雷程序,但我的代码中一直出现这个错误cannotallocateanarrayofconstantsize0我不知道为什么会这样;我没有分配大小——我将它设置为0。另一个问题是,我如何通过char读取我的输入char,这样我就可以将它保存在我的数组?正如您在下面看到的,我正在使用输入和输出。我评论了我的输入和输出,这样你们就可以看到我在这个程序中使用了什么。我想通过char读取char,这样我就可以将所有map保存在数组中。我正在使用M