16得票2回答
Python:ctypes中的垃圾收集器行为

假设我写了一些C/C++代码,它会分配一些内存,并返回一个指向它的指针。#include <stdlib.h> #ifdef __cplusplus extern "C" { #endif void Allocate(void **p) { int N=2048; *p...

180得票9回答
Java垃圾回收如何处理循环引用?

据我所知,Java中的垃圾回收会清理一些对象,如果没有其他东西“指向”该对象。 我的问题是:如果我们有以下这种情况会发生什么:class Node { public object value; public Node next; public Node(object o...

11得票2回答
何时在D语言中进行删除操作?

我在C++中学习了8年的D语言。我的问题是关于D语言垃圾回收的——什么时候需要使用delete,什么时候不需要?

7得票2回答
为什么Java不支持自动堆扩展?

为什么Java不像.NET CLR那样在达到操作系统所强制的进程内存限制之前扩展堆大小? 这是JVM开发者制定的政策,还是.NET CLR架构优于JVM架构的一个优势?换句话说,如果Oracle工程师想要为JVM实现自动堆扩展,他们能做到吗? 编辑:我真的认为这是Java的一个糟糕的设计选...

11得票3回答
使用Image.FromFile不会释放文件句柄

我正在将多个多图像tiff文件合并为单个多图像tiff文件,并且在删除源tiff文件时遇到了问题,因为Image类仍然保持着对它们的处理。 我正在使用Image.FromFile读取tiff图像:Bitmap resultTiff = (Bitmap) Image.FromFile(strIm...

13得票8回答
如何在非托管内存中实例化一个C#类?(可能吗?)

更新:现在有一个被接受的答案可以“工作”。你永远不应该使用它。永远。 首先,我要说明我的问题,我是一名游戏开发人员。想要这样做有一个合理的 - 尽管非常不寻常 - 与性能相关的原因。 假设我有一个像这样的 C# 类: class Foo { public int a, b...

9得票2回答
增加可用的内核和内存会导致JVM执行更多的垃圾回收吗?

我正在升级生产硬件,我们在新的套件上看到了比旧的更多的young-gen GC。 相同的程序在两台机器上运行(二进制完全相同)。一个显而易见的区别(我希望这不会对JVM产生影响)是我们已经升级了RHEL5 - > RHEL6。 我们的JVM(Java 64位Hotspot 1.6,java-v...

36得票9回答
C#中对现有对象使用关键字'new'

我想知道当一个对象的引用被重新分配时(在C#中),会发生什么。例如:Car c = new Car("Red Car"); c = new Car("Blue Car"); 由于引用被重复使用,当'Red Car'失去其引用时,垃圾回收器是否会处理/处置它?还是需要实现一个单独的方法来处理'r...

20得票6回答
Java中的垃圾收集器 - 将对象设置为null

假设有一个Tree对象,它包含一个根节点TreeNode对象,每个TreeNode都有leftNode和rightNode对象(例如BinaryTree对象)。 如果我调用:myTree = null; 相关的树节点对象在树内部真正发生了什么?它们也会被垃圾回收,还是我必须将树对象内所有相关...

12得票1回答
TensorFlow或Python在循环中使用多个模型时是否存在内存清理问题?

我正在开发一个使用tensorflow的模型,它需要占用很多内存。该模型会被迭代执行以处理给定的任务。 然而,随着时间的增加,整个过程开始消耗越来越多的内存,尽管它应该清理内存。这听起来像是我在迭代中保留了某个图形数据,但我几乎确定这些图形是干净分离的。 问题 我将代码简化为以下内容:i...