草庐IT

RedisModule_Alloc

全部标签

c++ - "std::bad_alloc": am I using too much memory?

消息:terminatecalledafterthrowinganinstanceof'std::bad_alloc'what():std::bad_alloc我查看了gdb回溯,这是我自己实现的最低级别的方法:/**getanarrayofvec3s,whichwillbeusedforrenderingtheimage*/vec3*MarchingCubes::getVertexNormalArray(){//UsedthesamearraysizetechniqueasgetVertexArray:wewantindicestomatchupvec3*array=newvec3[

c++ - _CRTDBG_MAP_ALLOC 不显示文件名

我正在尝试检测内存泄漏,并且我正在使用make_CRTDBG_MAP_ALLOC宏来定位泄漏区域的位置。所以我定义MACRO如下:#ifdef_DEBUG#define_CRTDBG_MAP_ALLOC#include#include#defineDEBUG_NEWnew(_NORMAL_BLOCK,__FILE__,__LINE__)#definenewDEBUG_NEW#endif在我的代码中,我有:UINTSomeFunThread(LPVOIDpParam){_CrtMemStatecrtMemStateStart;_CrtMemStatecrtMemStateFinish;_

java - 如何最小化 GC_FOR_ALLOC 的出现?

我的应用程序导致这些可怕的GC_FOR_ALLOC在特定位置(方法)多次发生:12-2922:20:30.229:D/dalvikvm(10592):GC_FOR_ALLOCfreed1105K,14%free10933K/12615K,paused33ms,total34ms12-2922:20:30.260:D/dalvikvm(10592):GC_FOR_ALLOCfreed337K,13%free11055K/12615K,paused25ms,total26ms12-2922:20:30.288:D/dalvikvm(10592):GC_FOR_ALLOCfreed278K,

c++ - 手动抛出 std::bad_alloc 可以吗?

我有这个代码..CEngineLayer::CEngineLayer(void){//Incomingcreationoflayers.Wrappingallofthisinatry/catchblockis//nothelpfulifloggingoferrorswillhappen.logger=new(std::nothrow)CLogger(this);if(logger==0){std::bad_allocexception;throwexception;}videoLayer=new(std::nothrow)CVideoLayer(this);if(videoLayer=

c++ - Hinnant 的 short_alloc 和对齐保证

我最近遇到了HowardHinnant的short_alloc这是我见过的自定义分配器的最佳示例。但是当我花更多时间研究代码以将其集成到我的个人项目中时,我突然想到提供基于堆栈的分配的arena类可能并不总是返回正确对齐的内存.实际上,我担心只有第一次分配才能保证适当对齐(因为缓冲区本身具有强制对齐),请参见下面的相关代码片段:templateclassarena{staticconststd::size_talignment=16;alignas(alignment)charbuf_[N];char*ptr_;//...};templatechar*arena::allocate(s

c++ - 查找bad_alloc原因的调试策略

我的程序中有一个相当严重的错误-偶尔调用new()会抛出bad_alloc。从我可以在bad_alloc上找到的文档来看,它似乎是由于以下原因而抛出的:当计算机内存不足时(这肯定不会发生,我有4GB的RAM,当使用少于5MB的内存(在任务管理器中检查)时程序会抛出bad_alloc,而后台没有任何严重的运行)。如果内存变得过于碎片化而无法分配新block(这也是不太可能的-我曾经分配的最大块大小约为1KB,并且在崩溃之前不会超过100次发生)。根据这些描述,我真的没有任何地方可以抛出bad_alloc。但是,我正在运行的应用程序运行多个线程,这可能是导致问题的原因。通过在单个线程上测试

objective-c - Objective-C 中的 alloc、init 和 new

这个问题在这里已经有了答案:Useofallocinitinsteadofnew(8个回答)关闭9年前。一本关于iPhone编程的书实例化了这样的类:[[Classalloc]init]另一本关于Objective-C的书是这样写的:[Classnew]有什么区别? 最佳答案 +new在字面上实现为:+(id)new{return[[selfalloc]init];}不多也不少。类可能会覆盖它,但这是非常不典型的,有利于执行+fooWithBar:之类的操作。 关于objective-c

c++ - 如何处理 C++ 中的 bad_alloc?

有一个名为foo的方法有时会返回以下错误:terminatecalledafterthrowinganinstanceof'std::bad_alloc'what():std::bad_allocAbort有没有办法可以使用try-catchblock来阻止此错误终止我的程序(我要做的就是返回-1)?如果有,它的语法是什么?我还能如何处理C++中的bad_alloc? 最佳答案 一般情况下,您不能,并且不应尝试来响应此错误。bad_alloc表示无法分配资源,因为没有足够的可用内存。在大多数情况下,您的程序无法应对这种情况,而尽快终

c++ - 如何处理 C++ 中的 bad_alloc?

有一个名为foo的方法有时会返回以下错误:terminatecalledafterthrowinganinstanceof'std::bad_alloc'what():std::bad_allocAbort有没有办法可以使用try-catchblock来阻止此错误终止我的程序(我要做的就是返回-1)?如果有,它的语法是什么?我还能如何处理C++中的bad_alloc? 最佳答案 一般情况下,您不能,并且不应尝试来响应此错误。bad_alloc表示无法分配资源,因为没有足够的可用内存。在大多数情况下,您的程序无法应对这种情况,而尽快终

objective-c - 使用 ARC,有什么更好的 : alloc or autorelease initializers?

使用alloc或autorelease初始化程序是否更好(更快、更高效)。例如:-(NSString*)hello:(NSString*)name{return[[NSStringalloc]initWithFormat:@"Hello,%@",name];}或-(NSString*)hello:(NSString*)name{return[NSStringstringWithFormat:@"Hello,%@",name];//return[@"Hello,"stringByAppendingString:name];//evensimpler}我知道在大多数情况下,这里的性能应该无