memory-management相关内容
我知道在 PHP 中您不必释放内存.垃圾收集器是否到达? 解决方案 有,这里的一篇很好的文章描述了它的陷阱.在 PHP >5.3.0,还有gc_enable函数.
..
我们有一个在 Jboss 上运行的 j2ee 应用程序,我们想要监控它的内存使用情况.目前我们使用以下代码 System.gc();运行时 rt = Runtime.getRuntime();long usedMB = (rt.totalMemory() - rt.freeMemory())/1024/1024;logger.information(this, "内存使用" + usedMB)
..
什么时候在 python 中收集对象垃圾?什么时候释放内存,收集是否影响性能?可以选择退出或调整 gc 算法吗?如果可以,如何选择? 解决方案 这里摘自 语言参考 对象永远不会被显式销毁;但是,当它们变得无法访问时,它们可能会被垃圾收集.允许实现推迟垃圾收集或完全忽略它 - 只要没有收集仍然可访问的对象,垃圾收集的实现方式就是实现质量的问题. CPython 实现细节:CPyt
..
在我的类中,我实现 IDisposable 如下: 公共类用户:IDisposable{公共 int id { 获取;受保护的集合;}公共字符串名称 { 获取;受保护的集合;}公共字符串传递 { 获取;受保护的集合;}公共用户(int UserID){id = 用户 ID;}公共用户(字符串用户名,字符串密码){名称 = 用户名;通过=密码;}//其他函数在这里...公共无效处置(){//清除所
..
所以我有一个支持 iOS 4 的项目,所以我所有的 IBOutlets 都是 __unsafe_unretained 甚至 IBOutlets 在 nib 中但在控制器主视图之外(同一个 nib 中的单独视图)并且所有工作很棒. 时间到了,现在客户只想支持 iOS 5,所以我们的团队将所有 __unsafe_unretained IBOutlets 更改为 __weak IBOutlets
..
这是(潜在的)问题: 我创建了一个 COM 对象,然后使用“foreach"遍历它返回的集合中的每个元素.我是否需要释放我在集合中遍历的每个单独元素?(见下面的代码.)如果是这样,我想不出一种方法可以有效地从“finally"语句中释放它,以防在操作项目时出现错误. 有什么建议吗? 私有静态无效doStuff(){ComObjectClass manager = null;尝试{经理
..
我认为标题说明了我的需要.我知道我们可以使用“asd"函数来执行此操作,但由于某些原因,我需要在 Fortran 中进行分配(即在子程序“asd_"中).这是C代码: #include 无效 asd(float **c) {*c = (float *) malloc (2*sizeof(float));**c =123;*(*c+1)=1234;}无效 asd_(float *
..
我正在编写一个已经使用 MPI 的 Fortan 代码. 现在,我面临一种情况,一组数据增长得非常大,但每个进程都相同,所以我希望每个节点只将它存储在内存中一次,并且一个节点上的所有进程都访问相同的数据. 为每个进程存储一次会超出可用 RAM. 是否有可能使用 openMP 实现类似的目标? 每个节点的数据共享是我唯一想要的,不需要其他每个节点的并行化,因为这已经通过 MP
..
我有一些代码在编译时给我重定位错误,下面是一个说明问题的示例: 程序主程序常见/baz/a,b,c真正的 a,b,cb = 0.0调用 foo()打印*, b结尾子程序 foo()常见/baz/a,b,c真正的 a,b,c整数,参数 :: nx = 450整数,参数 :: ny = 144整数,参数 :: nz = 144整数,参数 :: nf = 23*3真实 :: bar(nf,nx*ny
..
我正在开发 appengine-mapreduce 功能,并修改了演示以适合我的目的.基本上我有一百万行,格式如下:userid、time1、time2.我的目的是找到每个用户 ID 的 time1 和 time2 之间的差异. 但是,当我在 Google App Engine 上运行此程序时,我在日志部分遇到了以下错误消息: 在服务 130 个请求后,超过了 180.56 MB 的软
..
像 Couchbase 这样的 NoSQL 数据库确实在内存中保存了大量文档,因此它们的速度非常快,但它也对运行它的服务器的内存大小提出了更高的要求. 我正在寻找在 NoSQL 数据库中存储文档的几种相反策略之间的最佳策略.它们是: 优化速度 将整个信息放入一个(大)文档的好处是,使用单个 GET 可以从内存或磁盘中检索信息(如果之前已从内存中清除).对于无模式 NoSQL 数据
..
我有一个查看数据库的自动完成文本框.有时我在打字时收到以下错误. 试图读取或写入受保护的内存.这通常表明其他内存已损坏. 这里是代码 private void tBSearchName_TextChanged(object sender, EventArgs e){尝试{//测试长度if (tBSearchName.Text.Length > 3){//防止数据库查找if (!tBS
..
我的应用程序,使用滚动视图,通过 NSOperation 加载多个图像(最大约 100sh).我试图在我的 ipod 2Gen 上对其进行测试,但由于设备内存不足而崩溃,但在 ipod 4th Gen 上运行良好.在第 2 代,它在加载大约 15-20 个图像时崩溃.我应该如何处理这个问题? 解决方案 你可以懒惰地加载图片.这意味着,例如,在您的滚动视图中一次只有几张图像,以便您可以动画到
..
for(UIView *subview in [scrollView subviews]) {NSLog(@"subviews Count=%d",[[scrollView subviews]count]);//[子视图发布];[子视图 removeFromSuperview];} 在上述方法中,如果我使用 [subview removeFromSuperview]; 它工作正常...但如果我
..
我正在通过 Robert Sedgewick 的 C++ 算法学习 C++.现在,我正在研究 Eratosthenes 筛,用户指定了最大素数的上限.当我以最大 46349 运行代码时,它会运行并打印出最多 46349 的所有素数,但是当我以最大 46350 运行代码时,会发生分段错误.谁能帮忙解释一下原因? ./sieve.exe 463492 3 5 7 11 13 17 19 23 29
..
我有一个指向类的指针向量.我需要调用它们的析构函数并释放它们的内存.由于它们是指针向量 vector.clear() 不能完成这项工作.所以我继续像这样手动进行: void Population::clearPool(std::vectora,int size){染色体* c;for(int j = 0 ;j
..
我这里有一个简单的无限递归代码: 当我尝试运行相同的程序时,它会耗尽所有内存,最终我的笔记本电脑会挂起.我正在寻找一种方法来捕捉它并阻止机器挂起.PHP中是否有任何错误处理程序? 我已阅读并尝试过的内容:将 max_execution_time 设置为,比如说 5 秒,然后捕获错误行号.这没有按建议工作. 还有其他方法可以捕捉和阻止这种情况吗? 我正在使用 Ubuntu 1
..
为什么以下工作不会引发某种分段错误? char *path = "/usr/bin/";字符*随机=“012";//路径 + 随机 + \0//所以它是 malloc(13),但由于内存对齐,我得到 16 个字节(我在 32 位上)newPath = (char *) malloc(strlen(path) + strlen(random) + 1);strcat(新路径,路径);strcat(
..
我有一个函数可以扫描文件并返回行数以及字符串数组中的行数,我的函数如下所示: int load_lines(char* _file, char** _array){文件 *infile;char line_buffer[BUFSIZ];字符行号;infile = fopen(_file, "r");ine_number = 0;而(fgets(line_buffer,sizeof(line_bu
..
我通常喜欢解释清楚的问题和答案.但在这种情况下,我真的无法提供更多线索. 问题是:为什么 malloc() 给我 SIGSEGV?下面的调试显示程序没有时间测试返回的指向 NULL 的指针并退出.程序退出 INSIDE MALLOC! 我假设我在 glibc 中的 malloc 很好.我有一个 debian/linux wheezy 系统,在旧的 pentium(i386/i486 架
..