我是一个学习Java的.NET开发人员。因此,我了解所有编程的基础知识,如循环、变量、函数等。我最大的瓶颈是不像使用.NET那样熟悉Java包。
这就是这个线程的原因-在Java中我在哪里可以找到以下功能?
System.Diagnostics -在哪里可以使用秒表、编程断点和记录器?
有没有.NET性能计数器的Java等价物?
Java中的弱密钥是什么?我刚刚发现了一个集合,它在Java中使用了弱键,所以我在这里询问。:)
谢谢
发布于 2008-12-31 11:34:48
JAMon是一种可能的开源Java Monitoring库,可能满足您的需求。
此外,任何性能/管理计数器都通过Java Management Extensions (JMX)公开
然后,您将拥有多个监控控制台:
jconsole与Java安装捆绑在一起(Swing based)))
或者,查看此other posting,了解如何在Perfmon中监视JMX统计信息。
希望这能有所帮助。
发布于 2008-12-31 00:40:23
使用弱关键字的字典只保留对每个关键字的弱引用,因此如果关键字以其他方式适合垃圾收集,则它可能被收集,并且字典将有效地丢失该条目。有关弱引用的更多信息,请参阅WeakReference的文档。
System.Diagnostics:我不知道秒表和编程断点有什么等价物。对于日志记录,请查看java.util.logging或log4j等第三方包。
性能计数器:可能有某种方法可以将一些JVM挂接到Windows性能计数器中,但我从未见过它们。不过,您可能会发现VisualVM对一些相同的事情很有用。
发布于 2008-12-31 00:42:08
如果你只是想计时,你可以使用System.nanoTime()。
long start = System.nanoTime();
// a bunch of code
long end = System.nanoTime();
System.out.println("Elapsed time in seconds: " + (end-start)/1000000000.0);https://stackoverflow.com/questions/401945
复制相似问题