标签:garbage-collection

  • 如何使垃圾回收器在超出范围之前对其进行处置? - c#

    时间:2020-9-4

    我知道,当堆栈上不再有对它们的引用时,GC会清理堆上的对象。 我想知道是否有一种方法可以强制GC在此之前采取行动。我遇到的情况是这样的。 public void A(){ IList foo = bar(); //does work on foo's items foobar(); //more code before it goes out of […]

  • 我可以依靠垃圾收集器来停止AsyncTask吗? - java

    时间:2020-8-27

    一个快速的理论问题。假设我有一个Java类,它同时使用了终结器和自己的私有AsyncTask实例,而在其他任何地方都没有引用它。 现在,假设AsyncTask的doInBackground方法类似于: while(go) { f(); } 终结器是: public void finalize() { go = false; } 删除对该对象的所有外部引用后, […]

  • 如何确定我使用哪个GC? - java

    时间:2020-8-25

    我没有指定任何GC,并且我认为我的JVM默认没有启用任何GC。 当然,我知道OpenJDK8默认使用ParallelGC,但我认为它应该可以通过命令行打印,如下所示:java -XX:+PrintFlagsFinal|grep Use|grep GC我希望输出包含bool UseParallelOldGC = true {product},但不是: bool […]

  • JAVA GC:ParNew(升级失败),并发模式失败 - java

    时间:2020-8-23

    我已经看到我的应用程序/平台内存利用率突然飙升。在GC详细日志中,我看到以下内容: 1285.946: [GC 1285.946: [**ParNew (promotion failed)**: 353920K-353920K(353920K), 0.8003983 secs]1286.747: [CMS1287.338: [CMS-con current- […]

  • 在.net中分配新数组的成本很高 - c#

    时间:2020-8-21

    .Net中分配数组的O时间复杂度是多少? 我猜想,如果数组足够小以适合临时段,则应该为O(1),但是随着n变大,它将很难找到足够的内存,因此可能会改变。 同样,大对象堆可能会碎片化,因此,如果n足够大以使数组适合LOH,则它可能不会是O(1)。 参考方案 临时段中的对象(SOH;小对象堆)在该段上的最后一个已知对象之后分配。它实际上应该只是一个指向那里的指针 […]

  • 我如何从堆转储中知道Java对象是在使用权空间还是eden空间 - java

    时间:2020-8-18

    我有一个Hotspot JVM堆转储,我试图找出对象是否存在于权属空间,伊甸园空间或幸存者空间中,但我做不到。 感谢有人可以帮助我。 参考方案 我认为你不能。从this论坛帖子中, 对不起,坏消息,堆转储均不包含有关 对象所在的空间 查看此page中的Java堆转储的内容似乎可以确认该堆转储不包含生成信息, HEAP DUMP BEGIN (39793 ob […]

  • .Net运行时如何“理解”该结构仍具有参考 - c#

    时间:2020-8-14

    问题是.Net运行时如何理解使用Marshal.StructureToPtr放置到内存中的结构的字段不能被GC释放。 下面的情况。 我有以下结构: [StructLayout(LayoutKind.Sequential)] public struct SomeStruct { public string s; public Stream stream; pu […]

  • Java无法及时收集垃圾 - java

    时间:2020-8-14

    我有一个问题,jvm无法及时执行gc并冻结了应用程序。为此,“解决方案”是使用jconsole连接到应用程序,并建议jvm进行垃圾回收。我不必说这是应用程序的不良行为。 jvm是否有一些建议建议它更快/更频繁地执行gc?也许对此问题还有其他一些真正的解决方案? 问题似乎是内存不足,但是gc在将新数据发送到应用程序之前无法及时进行收集。之所以如此,是因为gc似 […]

  • 串行标记扫描紧凑型(PSOldGen)PS代表什么? - java

    时间:2020-8-13

    当我搜索在gc日志中看到的PSOldGen垃圾收集器时,发现它是Serial Mark-Sweep-Compact。如果此gc是串行的,那么PSOldGen中的PS代表什么? AFAIK它是并行清除。但这使我感到困惑。 [Full GC [PSYoungGen: 647K->0K(60352K)] [PSOldGen: 45361K->45875 […]

  • 未记录Mono GC的最大堆大小。在生产中使用安全吗? - c#

    时间:2020-8-1

    我需要为Mono使用的内存设置一个上限。 根据blogs,可以使用参数max-heap-size限制内存使用量。根据实验和according to the code,它确实可以实现我想要的功能。 但是,此选项isn't documented。 因此:在生产中依靠此选项是否安全(或者它具有我看不见的缺点,例如:无法保证在将来的Mono版本中仍然可用) […]