Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.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
在JavaWeb应用程序中,清除任何使用的集合是否会导致更好的内存管理?_Java_Memory Management_Collections - Fatal编程技术网

在JavaWeb应用程序中,清除任何使用的集合是否会导致更好的内存管理?

在JavaWeb应用程序中,清除任何使用的集合是否会导致更好的内存管理?,java,memory-management,collections,Java,Memory Management,Collections,我有一个列表元素,它是通过查询填充的,然后通过一个for循环运行,该循环将这个列表发送到前端,一个jsp并打印它们 想知道通过在for循环外调用list.clear()是否会清除list对象,这会导致更好的内存管理吗?还是应该使用weakhashmap进行此类活动 在使用如此多的第三方jar文件和容器的web应用程序中,分析是了解内存使用情况的一种好方法,但即使在编码时,如果有一种方法可以知道针对特定情况的最佳方法,那么采用这种方法也会更容易。e、 g.一个大部分是静态的站点可以使用hibern

我有一个列表元素,它是通过查询填充的,然后通过一个for循环运行,该循环将这个列表发送到前端,一个jsp并打印它们

想知道通过在for循环外调用list.clear()是否会清除list对象,这会导致更好的内存管理吗?还是应该使用weakhashmap进行此类活动

在使用如此多的第三方jar文件和容器的web应用程序中,分析是了解内存使用情况的一种好方法,但即使在编码时,如果有一种方法可以知道针对特定情况的最佳方法,那么采用这种方法也会更容易。e、 g.一个大部分是静态的站点可以使用hibernate或toplink类型的缓存,但是一天有几千个条目的站点可能需要一种不同的方法,其中缓存哪些对象将非常有意义

建议的任何资源,如果能明确规定在特定情况下采用何种方法,我们将不胜感激


java的优点是选择,缺点是选择

最好不要试图猜测GC,否则您可能会对结果感到惊讶。保持简单:当你完成某件事时,处理掉你对它的引用。除此之外,在你有问题之前不要解决问题。

最好不要试图猜测GC,否则你可能会对结果感到惊讶。保持简单:当你完成某件事时,处理掉你对它的引用。除此之外,在遇到问题之前不要解决问题。

在这种情况下,您肯定不想使用WeakHashMap,因为元素可以在处理完之前删除。
您可以清除集合,但在实践中,如果集合仅由局部变量引用,则无需清除。

在这种情况下,您肯定不想使用WeakHashMap,因为可以在使用元素之前删除它们。
您可以清除集合,但在实践中,如果集合仅由局部变量引用,则无需清除。

如果循环结束后不再使用列表,Java将注意到它符合GC的条件。填充它的项目也将如此。因此+1对于cletus,让de GC完成它的工作:)如果循环结束后列表不再使用,Java会注意到它符合GC的条件。填充它的项目也将如此。因此,对于cletus+1,让de GC完成它的工作:)