小编bru*_*atk的帖子

如果你的Java应用程序在没有做任何事情时正在消耗CPU,你如何确定它在做什么?

我正在调用供应商的Java API,并且在某些服务器上看起来JVM在登录API(CPU使用率为100%)后进入低优先级轮询循环.其他服务器上的相同应用程序不会出现此行为.这发生在WebSphere和Tomcat上.设置环境很棘手,因此很难尝试在Eclipse中进行分析.

有没有办法分析(或其他一些检查方法)在Tomcat中运行的现有Java应用程序,以找出在此spinwait类状态下正在执行的方法?应用程序只在进入此状态时执行一种方法(供应商的方法).供应商无法复制行为(当然).


更新:

使用JConsole我能够确定谁在运行以及他们在做什么.我花了几个小时才弄清楚它为什么这样做.问题最终是供应商使用的API jar与其使用的数据库配置不完全匹配.默认情况下,在配置中存在轻微不匹配的服务器上启用跟踪和性能监视.我用了一个不同的罐子,一切都很好.

谢谢,约书亚,你的回答.JConsole非常易于设置和用于监视现有应用程序.

@Cringe - 我做了一些你建议的一些选项的实验.设置JProfiler时遇到了一些问题,看起来不错(但价格昂贵).继续前进我继续添加Eclipse Profiler插件,我将查看不同的开源分析器来比较功能.

java profiling

12
推荐指数
2
解决办法
5283
查看次数

我想推荐一本关于Eclipse富客户端平台(RCP)的书

我已阅读亚马逊的几篇评论,有些书似乎已经过时了.我目前正在使用Eclipse 3.3的MyEclipse 6.5.我有兴趣听听那些有学习RCP经验的人以及他们用来开始的参考资料.

java eclipse rcp myeclipse

9
推荐指数
1
解决办法
3319
查看次数

是否可以只打印画布元素?

我创建了一个网页,允许您输入一些信息,然后根据该信息在canvas元素中绘制图像.除了印刷之外,我的工作方式与我想要的一样.

有没有办法打印出canvas元素或创建一个新的窗口来绘制,这是唯一的方法吗?

更新:

答案很简单.我在考虑更复杂的解决方案.

我希望我可以选择1个以上的答案.当我用*来禁用显示时,我无法让画布打印出来.最简单的解决方案是在@media print {}内的CSS中使用form {display:none;}来关闭我用于输入的表单.感谢您及时的回复.



    @media print {
           form {
         display:none;
       }
    }

Run Code Online (Sandbox Code Playgroud)

javascript printing canvas

2
推荐指数
1
解决办法
4339
查看次数

标签 统计

java ×2

canvas ×1

eclipse ×1

javascript ×1

myeclipse ×1

printing ×1

profiling ×1

rcp ×1