garbage-collection 相关问题

垃圾收集(GC)是一种自动内存管理形式,它试图回收垃圾或由程序不再使用的对象占用的内存。

为什么Go GC在这个程序中有一些长时间的停顿STW(几毫秒)?

在我们的一项服务中,发现gc偶尔会出现一些很长的STW(长达100ms),我随机编写了一个程序,发现它确实这样做了以及为什么。这个程序有时有千...

回答 1 投票 0

JavaScript 中的垃圾回收是如何工作的?

JavaScript 中的垃圾回收是如何工作的?它类似于 .NET 垃圾收集吗?是不是因为 VBScript 中垃圾回收的实现很糟糕,人们才避免使用它,

回答 2 投票 0

为什么指定的对象符合垃圾回收的条件?

郑重声明,我不是 Java 初学者,而是一名中级人员,有点忘记了一些 Java 基础知识。 C类{ 公共静态无效主(字符串a []){ ...

回答 2 投票 0

不再被引用的父对象,如果父对象本身持有存活引用,是否会被GC回收?

如果一个不再被引用的父对象拥有对仍然存在的对象的引用,那么它是否就没有资格被收集,就像在其他 viewmod 中引用的单例服务一样......

回答 1 投票 0

C# 中的“非托管”约束与非托管资源和垃圾收集器有关吗?

我一直在研究C#中的非托管约束,它在我脑海中提出了一个问题:非托管约束是否与“非托管资源”和垃圾收集器的管理有关? 准确...

回答 1 投票 0

从函数 C++ 返回后,字符串似乎未分配

我目前正在尝试创建一个简单的函数来读取文件的内容并将其存储到 std::string 或 char 数组中。我遇到了数据在...内读取完全正常的问题

回答 1 投票 0

检测到不成比例的死亡物体

我做了一个简单的例子来展示这个问题。我有一个 blazor 项目,其中有一个调用函数的页面: 插入内存 T... 我做了一个简单的例子来展示这个问题。我有一个 blazor 项目,其中有一个调用函数的页面: <button @onclick='(() => TestMemory())'>Insert Memory</button> <h3>Times function is run: @counter</h3> @code { int counter = 0; public void TestMemory() { _agp.TestClas(); counter++; } } 调用的函数: public void TestClas() { List<TestClass> testList = new List<TestClass>(); for (int i = 0; i < 100000; i++) { testList.Add(new TestClass() { ArtId = i }); } } testList 不存在于函数范围之外。 每次我执行该函数时,heapsize 都没有太大变化: 然而进程内存不断增长,而且我没有看到它缩小。在Visual Studio的内存分析器中得到以下警告: 在此输入图片描述 为什么这些死对象会保留在内存中直到程序关闭,我该如何防止它? 尝试:清除列表,list = null,list.TrimExcess()。 我也遇到过同样的消息,但即使强制垃圾收集器运行也是毫无意义的。 事实是,我正在处理的对象是在大对象堆上分配的,这是一个由 GC 以不同方式处理的内存区域 - 我不知道这是否适用于您的情况。 我已经解决了更改 GC 行为的问题: System.Runtime.GCSettings.LargeObjectHeapCompactionMode = System.Runtime.GCLargeObjectHeapCompactionMode.CompactOnce; 然后强制GC运行: System.GC.Collect(); 但您也可以简单地设置 LargeObjectHeapCompactionMode 的值,并将其余的留给下一次发生的垃圾收集。 来自 Microsoft 文档: LargeObjectHeapCompactionMode属性的默认值为 GCLargeObjectHeapCompactionMode.Default,表示垃圾回收期间不压缩 LOH。如果您分配 财产价值为 GCLargeObjectHeapCompactionMode.CompactOnce,LOH在下一次完全阻塞垃圾回收期间被压缩,并且属性 值重置为 GCLargeObjectHeapCompactionMode.Default。

回答 1 投票 0

System.gc 将在 android(Andengine) 中工作

我使用and引擎开发游戏。在J2me游戏退出时,我将所有对象设置为null IE: 图像img; 精灵 s1; 当退出应用程序时, 图像=空; s1=空; 在android中我将使用System.gc()...

回答 3 投票 0

无法识别V8中年轻代空间的限制

我正在研究 NodeJS 中的 --max-semi-space-size 并浏览了网上的文章。然而,我从 v8 的 6 年前的博客中找到了以下文本 由于年轻一代是相关的...

回答 1 投票 0

C# 迭代器泄漏的托管内存

我有一个生成 DNA 序列的类,用长字符串表示。该类实现了IEnumerable接口,它可以产生无限多个DNA序列...

回答 4 投票 0

数组内值类型的垃圾集合

假设我有一些小数据类型 - 例如一个简单的点实现。我可以将此类型实现为引用类型(类),也可以实现为值类型(结构)。 公共类 PointClass {...

回答 1 投票 0

Angular - 从内存中删除对象而不破坏组件

我有一个非常复杂的角度应用程序,它会导致浏览器很快崩溃。所以我正在寻求优化它。我修复了每个订阅内存泄漏,但问题仍然存在。所以我用 Chr...

回答 1 投票 0

完整垃圾收集与主要垃圾收集[重复]

所以我正在查看 Oracle 垃圾收集文档,我对这段特定的段落有点困惑 如果 JVM 发现类不存在,则可能会收集(卸载)类 更长的...

回答 1 投票 0

如何确定g1gc自动生成的区域大小?

文档说: 启动时,Java 虚拟机 (JVM) 设置区域大小 我如何确定启动时为 g1gc 区域选择的大小?如何获取通知......

回答 1 投票 0

HotSpot中的GC是如何相互配合的

众所周知,HotSpot 中有 Serial、CMS、G1 等七个 GC。我很困惑的是,它们同时全部工作还是只有部分工作?他们是如何配合的...

回答 1 投票 0

全局数组中的对象没有被释放(垃圾回收)

关于垃圾收集的问题。 我有一个 javascript 程序,其中在 Application.js let g_objArr = [] 中初始化了一个全局变量。这个 g_objArr 用于加载客户资料...

回答 1 投票 0

如何可视化 JVM 在 Linux 上的工作?

我没有找到任何程序或工具,例如 VisualVM 或 Visual GC for linux。除了 JVM 运行参数之外,还有什么方法可以查看它的工作情况吗?顺便说一句,我使用 Intellij IDEA。可能 JetBrains 有...

回答 2 投票 0

“主动”垃圾收集与 Rust 的借用检查器

我对 Rust Borrow Checker 与 JVM 垃圾收集器的理解有一个基本问题。抱歉,如果这是一个业余问题。 我试图深入了解...

回答 1 投票 0

ZGC启动后使用了大量缓存

ZGC启动后即使没有请求也使用了大量缓存 操作系统: 码头工人 jdk:openjdk版本“17.0.8”2023-07-18 这是我的容器的启动命令 CMD ["java","-...

回答 1 投票 0

C# 是否删除我的(非托管)指针还是我需要手动执行此操作?

前言:我主要了解C++,但对C#和垃圾回收不太了解。 我正在尝试创建一个 C++ 类,将其导出到 dll,然后以 C# 形式使用它。 在这里使用 JaredPar 的答案...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.