Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 负自由存储器_Java_Sorting_Memory - Fatal编程技术网

Java 负自由存储器

Java 负自由存储器,java,sorting,memory,Java,Sorting,Memory,有时,这段代码打印负数,如-64。 该值以KB为单位 会发生什么事 long memoriaInicial = Runtime.getRuntime().freeMemory() / 1024; sort(vector); System.Out.Println(memoriaInicial - Runtime.getRuntime().freeMemory()/1024); 这意味着在您排序之后,垃圾收集器可能释放了更多内存,您拥有的内存也比开始时多。您认为长类型会有问题吗?这有什么问题?也

有时,这段代码打印负数,如-64。 该值以KB为单位

会发生什么事


long memoriaInicial = Runtime.getRuntime().freeMemory() / 1024;
sort(vector);
System.Out.Println(memoriaInicial - Runtime.getRuntime().freeMemory()/1024);

这意味着在您排序之后,垃圾收集器可能释放了更多内存,您拥有的内存也比开始时多。

您认为长类型会有问题吗?这有什么问题?也许你可以解释一下为什么你期望一个积极的结果。这是一个正常的数学呵呵。想象一下,我的程序以50mb的空闲内存开始。然后我使用10mb。所以50-40=10mb.hmmm..这篇文章说垃圾收集器只在没有空间时运行,但我的命令是:xms85m-Xmx850M。我很确定这个方法没有使用850MB。我对Java不太了解,但它在很多方面与.NET非常相似。在.NET中,垃圾收集器可以在任意时间运行。我想我对Java的了解已经足够多了,可以假设你的奇怪结果是垃圾收集的结果。这可能是正确的答案。谢谢minitech。