Java 计算对象的年龄有什么好处?

Java 计算对象的年龄有什么好处?,java,object,garbage-collection,jvm,singleton,Java,Object,Garbage Collection,Jvm,Singleton,偶然发现一个与stackoverflow中的日历对象相关的问题。读到这个问题,我问自己一个问题:“若我们能找到一个物体的年龄呢?”?对象的年龄,以小时/天/周/月/年为单位。那我们该怎么办呢?这会有帮助吗?它能帮助我分析我的程序运行时吗?” 我想我们可以将单例对象与对象的年龄联系起来,因为它存在于应用程序的生命周期中。从这个意义上讲,从加载单例对象时起,它就开始其生命周期,并在应用程序结束时结束生命周期。但这同样也可以扩展到非单例对象 我认为这个问题可能值得研究,但我想从stackoverflo

偶然发现一个与stackoverflow中的日历对象相关的问题。读到这个问题,我问自己一个问题:“若我们能找到一个物体的年龄呢?”?对象的年龄,以小时/天/周/月/年为单位。那我们该怎么办呢?这会有帮助吗?它能帮助我分析我的程序运行时吗?”

  • 我想我们可以将单例对象与对象的年龄联系起来,因为它存在于应用程序的生命周期中。从这个意义上讲,从加载单例对象时起,它就开始其生命周期,并在应用程序结束时结束生命周期。但这同样也可以扩展到非单例对象

  • 我认为这个问题可能值得研究,但我想从stackoverflow社区得到证实。您是否认为我们可能会在应用程序/系统的运行时遇到这样一个场景:我们需要计算JVM中对象的年龄或运行时内存等。通过计算,我们可以为应用程序做出一些决策

  • 经过一些小的研究,发现垃圾收集器需要知道对象的年龄

  • 因此,我想知道的是:

  • 如果我们能找到一个物体的年龄呢?对象的年龄,以小时/天/周/月/年为单位。我们用它能做什么
  • 这会有帮助吗
  • 它能帮助我们分析我的程序运行时并用它做些什么吗?它会是什么
  • 应用程序运行时/场景中可能受益于对象计算年龄的部分是什么
  • 在开发/调试/现场问题期间,您是否遇到过这样一个场景:如果它能够计算对象的年龄,它会从中受益

  • (希望这不会被否决,我只是想补充一点,我很好奇问stackoverflow社区。很抱歉,这不是一个适合在这里提问的编程练习。我添加了一些标签,以便为这个问题提供上下文。)

    我不知道这会有什么好处。我想,这可能有助于解决某些性能调优和调试问题

    但是,除非对对象进行编码以记录其自身的年龄,否则(在标准Java中)没有实际的方法来实现这一点。这将带来巨大的时间和空间成本


    经过一些小的研究,发现垃圾收集器需要知道对象的年龄

    实际上,一代GC只需要大致的年龄。它可以根据对象当前居住的位置来确定;i、 e.当前分配的“空间”是什么


    对于Java语言和主流实现

    如果我们能找到一个物体的年龄呢

    一般来说,我们不能。总的来说,这使得剩下的问题“毫无意义”

    我们用它能做什么

    模拟

    这会有帮助吗

    模拟

    它能帮助我们分析我的程序运行时并用它做些什么吗?它会是什么

    在某些情况下,可能是的。然而,这个问题是没有意义的

    应用程序运行时/场景中可能受益于对象计算年龄的部分是什么

    可能是性能调整。可能是调试。然而,这个问题是没有意义的

    在开发/调试/现场问题期间,您是否遇到过这样一个场景:如果它能够计算对象的年龄,它会从中受益

    可能吧。(我已经编程40多年了,很难记住我在那段时间里所做的一切。)但是我没有强调这一点

    而且,我从来没有想过(假设)记录每个对象的生命周期的好处是值得的

    但是,如果您正在设计/实现一种新的实验性编程语言,可以将其包含在特性列表中。如果它被证明是一个有用的特性,那么里面应该有一些研究论文



    1-和(愤世嫉俗地)即使没有:-)

    继续读下去。谢谢,我会把它读上去。如果我无意中设计了一种实验性语言,我会试试这个。