标签: memory-management

php多维数组,内存管理

我需要这样的结构

    array(){
    [0] => array(){
           [0] => array(){ 
                         // this array will have 'n' values(n is large, like 2000)
                         }
           [1] => array(){ 
                         // this array will have 'n' values(n is large, like 2000)
                         }
                   }
    .
    .
    .
[n] => ............
}
Run Code Online (Sandbox Code Playgroud)

n个数组每个都有一个2元素数组,其中每个元素都有一个n值数组.

我使用$list[$m][0][$n]$list[$m][1][$n]内部2 for循环$m,$n不同0...2000

这超过了允许的内存大小..我可以在php.ini中更改大小,但我想优化我的内存使用量而不是更改限制.

会用对象帮忙吗?

请提供一些示例代码以供理解.谢谢.

php memory-management multidimensional-array

0
推荐指数
1
解决办法
1165
查看次数

一个非常基本的自动扩展列表/数组

我有一个方法,它返回一个固定类型对象的数组(让我们说MyObject).

该方法创建一个新的空Stack<MyObject>.然后,它做了一些工作,并推动了一些数字MyObjects到最后Stack.最后,它返回Stack.ToArray().

它不会更改已添加的项目或其属性,也不会删除它们.要添加的元素数量会降低性能.无需对元素进行排序/排序.

Stack是最好用的吗?或者我必须切换到CollectionList确保更好的性能和/或更低的内存成本?

c# performance stack memory-management data-structures

0
推荐指数
1
解决办法
1967
查看次数

为什么我的UITableView弄乱了它的图像?

我正在尝试让我的UITableView显示放置在其上的图像的单元格(包含在UIImageView中).我想知道为什么当上下滚动时,图像看起来像是叠加在一起.

在这种情况下,为了内存管理以及解决此问题,我能做些什么?

替代文字http://i44.tinypic.com/107508h.png

memory iphone sdk memory-management image

0
推荐指数
1
解决办法
639
查看次数

控制在Linux中运行的最大Java独立版

我们开发了一个Java独立程序.我们在Linux(RedHat ES 4)cron计划中配置了每10分钟执行一次 Java独立程序.每个独立可能需要一段时间才能完成,或者有时甚至可能在5分钟内完成.

我正在寻找的问题/解决方案是,任何时候执行的Java独立站的数量不应超过,例如,5个进程.因此,例如,在Java独立/进程启动之前,如果已经有5个进程在运行,则不应该启动此进程; 否则这将间接开始创建OutOfMemoryError问题.我该如何控制?我还想使这5个过程限制可配置.

其他信息:
我还配置了-Xms-Xmx堆大小设置.

有没有可以控制它的工具/机制?

我也听说过Java Service Wrapper.这是怎么回事?

java memory-management process

0
推荐指数
1
解决办法
508
查看次数

C++ Memory Leak,找不到哪里

我正在使用Visual Studio 2008,开发一个OpenGL窗口.我创建了几个用于创建骨架的类,一个用于关节,一个用于皮肤,一个用于Body(用于多个关节和皮肤),另一个用于读取一个skel/skin文件.

在我的每个类中,我使用指针来处理我的大部分数据,其中大多数是使用= new int [XX]声明的.我使用delete [XX]为每个删除指针的类都有一个析构函数.

在我的GLUT显示功能中,我让它声明一个正文,打开文件并绘制它们,然后删除显示结尾处的正文.但是程序中某处仍然存在内存泄漏.随着时间的推移,它的内存使用量会以一致的速度不断增加,我将其解释为不被删除的内容.

我不确定它是否在过度显示功能中只是不删除Body类或其他东西.我已经按照Visual Studio 2008中的内存泄漏检测步骤进行了操作,它没有报告任何泄漏,但我不能100%确定它是否适合我.我不会精通C++,所以我可能会忽略一些东西,有人能看到它吗?

从主要:

void display(void){
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    Body *body = new Body();
    body->readSkel("C:\\skel2.skel");
    body->drawBody();
    body = new Body();
    body->readSkel("C:\\skel1.skel");
    body->drawBody();
    glutSwapBuffers();  
    body->~Body();
    delete body;
}
Run Code Online (Sandbox Code Playgroud)

来自身体:

Body::Body(){
    skelFile = string();
    skinFile = string();
    totalJoints = 0;
    joints = new Joint[25];
    skin = new Skin;
}

Body::~Body(){
    delete[25] joints;
    delete skin; 
}
Run Code Online (Sandbox Code Playgroud)

c++ opengl memory-leaks memory-management freeglut

0
推荐指数
1
解决办法
1895
查看次数

Obj-C内存管理:为什么这不起作用?

为什么以下代码不起作用?

MyViewController *viewController = [[MyViewController alloc] init];
[myWindow addSubview:viewController.view];
[viewController release];
Run Code Online (Sandbox Code Playgroud)

据我所知,只要窗口需要它就myWindow应该保留viewController.view.那么为什么这会导致我的应用在发布时崩溃?(注释掉最后一行修复问题,如预期的那样)

iphone cocoa-touch memory-management objective-c

0
推荐指数
1
解决办法
116
查看次数

c:内存分配(发生了什么)

请看一下这段代码.我为第一个变量分配一个字节,为第二个变量分配另一个字节.但是,似乎编译器分配更多(或者我缺少一些东西).程序输出两个字符串,即使它们的长度多于一个字节.

void main() {
    char* some1 = malloc(1);
    sprintf(some1,"cool");
    char* some2 = malloc(1);
    sprintf(some2,"face");
    printf("%s ",some1);
    printf("%s\n",some2);
}
Run Code Online (Sandbox Code Playgroud)

拜托,任何人都可以发现在分配内存时发生的事情.

c memory-management

0
推荐指数
2
解决办法
198
查看次数

Hoard分配器没有"工作"?

我正在尝试使用Hoard分配器来工作,但它似乎没有.我有一个基准测试应用程序,可以进行大量的动态内存管理.Hoard和glibc内存管理器的执行时间是一样的.这让我想知道我是不是做对了.

我做的是......

export LD_PRELOAD="/path/libhoard.so"

g++ main.cpp -O3 -o bm -lpthread -lrt
Run Code Online (Sandbox Code Playgroud)

我不应该链接到Hoard分配器吗?路径(在LD_PRELOAD中)是否重要,或者我可以拥有任何路径?

我正在运行Ubuntu 8.04和g ++ 4.2.4

干杯


没有人知道任何Linux命令(如grep)来确定Hoard是否正确加载,并且是否使用了实际的分配器?

c++ memory-management hoard

0
推荐指数
1
解决办法
916
查看次数

NOOB内存问题 - EXC_BAD_ACCESS(OBJ-C/iPhone)

我一直在靠墙撞墙几天,需要一些帮助.我觉得我在做一些非常愚蠢的事情,但我找不到问题.这是表视图的控制器.我把SQL放在一行以简化它,作为此错误的故障排除的一部分.通常,它将位于模型类中的存取方法中.

它通过SQL读取就好了.找到这两个对象,将它们加载到todaysWorkout数组中,然后为表视图构建单元格.表视图实际上出现在scree上,然后抛出EXC_BAD_ACCESS.

我运行了仪器,它显示以下内容:

0 CFString Malloc 1 00:03.765 0x3946470 176基础 - [NSPlaceholderString initWithFormat:locale:arguments:]

1 CFString Autorelease 00:03.765 0x3946470 0 Foundation NSRecordAllocationEvent

2 CFString CFRelease 0 00:03.767 0x3946470 0带它 - [WorkoutViewController viewDidLoad]

3 CFString Zombie -1 00:03.917 0x3946470 0基础NSPopAutoreleasePool

这是控制器的源代码.我把它全部放在那里以防万一有什么东西导致问题.我真诚地感谢我能得到的任何帮助:

标头:

#import <UIKit/UIKit.h>
#import <sqlite3.h>
#import "NoteCell.h"
#import "BIUtility.h"
#import "Bring_ItAppDelegate.h"
#import "MoveListViewController.h"


@class MoveListViewController;
@class BIUtility;

@interface WorkoutViewController : UITableViewController {
    NSMutableArray *todaysWorkouts;
    IBOutlet NoteCell *woNoteCell;
    MoveListViewController *childController;
    NSInteger scheduleDay;
    BIUtility *bi;
}

@property (nonatomic, retain) NSMutableArray *todaysWorkouts;
@property (nonatomic, …
Run Code Online (Sandbox Code Playgroud)

memory-management exc-bad-access objective-c

0
推荐指数
1
解决办法
1420
查看次数

调试意外错误消息 - 可能的内存管理问题?

我正在尝试调试一个应用程序,这个应用程序会抛出奇怪的(对我未经过眼睛处理的)错误.当我尝试简单地记录数组的计数时......

NSLog(@"Array has %i items", [[self startingPlayers] count]);
Run Code Online (Sandbox Code Playgroud)

...我有时会收到错误:

-[NSCFString count]: unrecognized selector sent to instance 0x1002af600
Run Code Online (Sandbox Code Playgroud)

或其他时间

-[NSConcreteNotification count]: unrecognized selector sent to instance 0x1002af600
Run Code Online (Sandbox Code Playgroud)

我没有向任何NSString或NSNotification发送'count',这行代码正常工作.

理论......

虽然错误有所不同,但崩溃发生在可预测的时间,在我运行了一些其他代码之后,我认为我可能会遇到内存管理问题.是否有可能对象引用仍指向要销毁的东西?对不起,如果我的条款关闭了,但也许它期望数组在它所谓的'count'的地址,但是找到另一个不应该存在的前一个对象(例如NSString)?这会导致问题吗?

如果是这样,调试和找出该地址的最有效方法是什么?到目前为止,我的大多数调试都涉及插入NSLog,因此这将是学习如何使用调试器的好机会.

cocoa memory-management objective-c

0
推荐指数
1
解决办法
1199
查看次数