我正在创建一个 Java 程序, 将一些数据添加到一个阵列列表中 。
一些处理在循环中, 我正在在循环中的列表中添加一个新的节点, 使用该节点执行操作, 然后在循环迭代结束前删除该节点, 使用 trarrist. remove () 。 我还在运行 System. gc (); 就在循环迭代结束之前 。
然而当我拿下一个记忆倾弃处时, 我发现阵列列表仍然持有我在不同循环迭代中使用的所有值... 我如何从记忆中抹去所有这些值? 我想在循环迭代结束前做这个, 这样阵列列表就不会变小?
我正在创建一个 Java 程序, 将一些数据添加到一个阵列列表中 。
一些处理在循环中, 我正在在循环中的列表中添加一个新的节点, 使用该节点执行操作, 然后在循环迭代结束前删除该节点, 使用 trarrist. remove () 。 我还在运行 System. gc (); 就在循环迭代结束之前 。
然而当我拿下一个记忆倾弃处时, 我发现阵列列表仍然持有我在不同循环迭代中使用的所有值... 我如何从记忆中抹去所有这些值? 我想在循环迭代结束前做这个, 这样阵列列表就不会变小?
Java 有垃圾收集器是有原因的, 原因是程序员不必考虑从内存中移除对象。 您唯一能做的( 我不建议)是强制启动垃圾收集器 < code> System. gc () code > 方法。 但记住要做两次, 因为第一次它只会通过引用 < code > 终局化 () code > 方法来准备要删除的对象 。
如果使用“活性”物体的内存倾弃,则该物体将被删除。
去除物体的成本相对较高,因此通常最好在爪哇进行,以便只在需要时(当联合核查机制这样做时)才能移除物体。
您的意思是将矩阵列表中的一部分内存解开来, 而不是将以前存储在矩阵列表中的天体解开来吗? 如果是这样的话, 您可以拨打 ArrayList. trimToSize ()
- 来这样做, 它将将矩阵中的所有值复制成一个新的( 内部) 阵列, 并允许收集旧的( 内部) 阵列。 (因为要复制阵列中的所有值, 它自然只能在有重大区别时才能完成 。)
Hi have this j2ee web application developed using spring framework. I have a problem with rendering mnessages in nihongo characters from the properties file. I tried converting the file to ascii using ...
Check this, List<String> list = new ArrayList<String>(); for (int i = 0; i < 10000; i++) { String value = (""+UUID.randomUUID().getLeastSignificantBits()).substring(3, ...
I am in the middle of solving a problem where I think it s best suited for a decorator and a state pattern. The high level setting is something like a sandwich maker and dispenser, where I have a set ...
I have been trying to execute a MS SQL Server stored procedure via JDBC today and have been unsuccessful thus far. The stored procedure has 1 input and 1 output parameter. With every combination I ...
I have a system which contains multiple applications connected together using JMS and Spring Integration. Messages get sent along a chain of applications. [App A] -> [App B] -> [App C] We set a ...
If I m given two Java Libraries in Jar format, 1 having no bells and whistles, and the other having lots of them that will mostly go unused.... my question is: How will the larger, mostly unused ...
I have a Class variable that holds a certain type and I need to get a variable that holds the corresponding array class. The best I could come up with is this: Class arrayOfFooClass = java.lang....
I m working on a Java desktop application that reads and writes from/to different files. I think a better solution would be to replace the file system by a SQLite database. How hard is it to migrate ...