2011-09-22 72 views
1

我有一个性能问题,使得鼠标事件以一种奇怪的方式堆叠起来。我的配置工具说AWT线程一直占用很多。 我想知道是否有一些聪明的方法(例如在属性文件中设置一些值)以使AWT线程吐出关于它在做什么的详细日志消息。如何打开日志记录AWT

+1

我怀疑你在EDT里面做了很多自定义处理。否则,让事件线程非常繁忙是“非常复杂”的。 – Howard

+0

使用问题分析器工具,您是否可以不分析在特定方法中花费的平均时间,并因此查看哪些以某种方式饱和AWT线程? – obfuscation

+0

不幸的是,我不能让我的分析工具向我展示任何细节,除了当我移动鼠标指针时AWT线程变得非常繁忙。我最近看到,在AWT线程上发送的事件数量并不是特别高。另外,这只在Linux上运行时才会发生。在Windows上,一切都像一个魅力。我正在运行JRE 1.6更新27。 –

回答

0

您可以使用AspectJ'注释'方法调用。然而,使用探查器很可能更有意义。或者您的JDK附带的“分析器”。

0

我不知道这个日志是谁的信息。我刚刚试图寻找记录器到AWT类中的用法,但没有看到任何东西。

但我可能有其他想法给你。

使用Toolkit.getDefaultToolkit().addAWTEventListener(listener, eventMask)连接到事件队列。将事件打印到日志文件。可能你会看到什么样的事件需要更多的时间。