测量 Java 程序内存使用情况的最佳方法?

2024-01-17

我目前正在使用VisualVM,但我遇到的问题是我无法保存它生成的图表。我需要报告一些有关其内存使用情况和运行时间的数据,尽管运行时间很容易获得System.nanoTime()。我也尝试过NetBeans 分析器但这不是我想要的,因为我不是在寻找会减慢速度的特定部件或任何东西,所以这有点矫枉过正。它最大的问题是它消耗了太多的处理时间。也不允许我像 VisualVM 那样轻松捕获/传输数据,至少据我所知。

理想情况下,最好的方法是调用一些方法,因为这样我就可以更轻松地获取信息,但是像 VisualVM 这样实际上可以让我保存图形的东西都可以。与 NetBeans 分析器相比,VisualVM 的性能也相当不错,尽管我想这是因为我没有使用它的分析器。

我目前使用的是 Ubuntu,但 Windows 7 也不错。不过,我宁愿有一个专门从事此工作的程序,因为不这样做的程序获得的信息可能包括 JVM 和其他最好不要的东西。

嗯,显然,您可以保存当前会话的快照并最大化 VisualVM 中的窗口,这样您就可以使图表更大,拍摄快照并剪切它们......但这有点像黑客。欢迎更好的建议。


Runtime.getRuntime().freeMemory();

Runtime.getRuntime().totalMemory();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

测量 Java 程序内存使用情况的最佳方法? 的相关文章

  • SPNEGO 密码身份验证问题

    我已将我的应用程序配置为通过 SPNEGO 与 Websphere 使用 Kerberos 身份验证 这是详细信息 krb5 conf libdefaults default realm ABC MYCOMPANY COM default
  • 用于解析和构建逻辑表达式的 Java 库

    我正在寻找一个 Java 开源库来解析和构建类似 SQL 的表达式 例如评估表达式的有效性 例如 a x or y and b z 另外我想要一个用于构建或扩展表达式的 API 就像是 Expression exp new Expressi
  • 将 MouseListener 添加到面板

    我正在尝试将鼠标操作添加到我的面板中 这就是程序应该做的事情 编写一个程序 允许用户通过按三下鼠标来指定一个三角形 第一次按下鼠标后 画一个小点 第二次按下鼠标后 绘制一条连接前两个点的线 第三次按下鼠标后 绘制整个三角形 第四次按下鼠标会
  • 使用 Apache POI Excel 写入特定单元格位置

    如果我有一个未排序的参数 x y z 列表 是否有一种简单的方法将它们写入使用 POI 创建的 Excel 文档中的特定单元格 就好像前两个参数是 X 和Y 坐标 例如 我有如下行 10 4 100 是否可以在第 10 行第 4 列的单元格
  • 最快的高斯模糊实现

    如何以最快的速度实施高斯模糊 http en wikipedia org wiki Gaussian blur算法 我要用Java来实现它 所以GPU http en wikipedia org wiki Graphics processi
  • Spring中的ProxyFactoryBean

    有人可以解释一下吗代理工厂Bean http static springsource org spring docs current javadoc api org springframework aop framework ProxyFa
  • 使用 Spring 控制器处理错误 404

    I use ExceptionHandler处理我的网络应用程序抛出的异常 在我的例子中我的应用程序返回JSON回应HTTP status用于对客户端的错误响应 但是 我正在尝试弄清楚如何处理error 404返回与处理的类似的 JSON
  • 在java中将字符串日期转换为美国格式

    我有下面的代码 其中日期为字符串类型 我必须将其设置为美国格式 所以下面我已经展示了它 private static final SimpleDateFormat usOutputDate new SimpleDateFormat MM d
  • java setFullScreenWindow 在 Mac 中隐藏登录对话框

    我使用的是全屏窗口 类似于屏幕保护程序 使用这里的方法 GraphicsEnvironment getLocalGraphicsEnvironment getDefaultScreenDevice setFullScreenWindow t
  • 插入时的 iBatis 判别器

    我有一个抽象类Example以及与之相伴的具体子类 我使用鉴别器来提取数据out数据库的 像这样
  • 生成 equals 和 hashcode 时忽略属性

    假设我有一个类 Customer public class Customer private String firstName private String lastName private String doNotAddMeToEqual
  • 在带有 Protocol Buffers 的项目中使用 Proguard 有什么特点?

    我有一个使用 Google Protocol Buffers 的项目 一旦我尝试用 ProGuard 对其进行混淆 似乎 protobuf 会导致问题 我将所有自己的类打包成mybuildedclasses jar 谷歌代码被打包成prot
  • 在 Java 中创建 XML 文件的最佳方法是什么?

    我们目前使用 dom4j 来创建 XML 文件 不过 我猜现在有更好的东西了 如果我们使用的是 Java 1 6 或更高版本 那么在编写 XML 文件时最好使用什么类 运行速度最快 使用简单 我不需要构建一个 DOM 然后编写整个 DOM
  • HTTP 状态 405 - 此 URL java servlet 不支持 HTTP 方法 POST [重复]

    这个问题在这里已经有答案了 我无法使页面正常工作 我有要发布的表单方法和我的 servlet 实现doPost 然而 它不断地向我表明我并不支持POST方法 我只是想做一个简单的网站并将值插入到我的 MySQL 数据库中 type Stat
  • 删除 JFX 中选项卡后面的灰色背景

    So is there any way to remove the gray area behind the tab s 我尝试过用 CSS 来做到这一点 但没有找到方法 要设置 tabpane 标题的背景颜色 请在 CSS 文件中写入 t
  • 如何使用Gson仅从Json反序列化某些特定字段?

    我有以下 JSON 字符串 channel bvmt initValues data value instrumentIds TN0007250012 TN0007500010 instruments mnemonic ADWYA marc
  • java中使用多线程调用同一类的不同方法

    我有一个类 如下所示 具有三种方法 public class MyRunnable implements Runnable Override public void run what code need to write here to c
  • java.lang.IllegalStateException - 提交响应后无法创建会话

    我在我的项目中使用 JSF PrimeFaces 我为此准备了一个Maven项目 当我编译项目并加载主页后 我收到以下异常 java lang IllegalStateException Cannot create a session af
  • Java/MongoDB 按日期查询

    我将一个值作为 java util Date 存储在我的集合中 但是当我查询以获取两个特定日期之间的值时 我最终得到的值超出了范围 这是我的代码 插入 BasicDBObject object new BasicDBObject objec
  • 为什么java.lang.Cloneable不重写java.lang.Object中的clone()方法?

    Java 规范java lang Cloneable接口将自身定义为表示扩展它的任何对象也实现了clone 休眠的方法java lang Object 具体来说 它说 一个类实现了Cloneable接口来指示java lang Object

随机推荐

  • Objective C 检查文本字段是否为空

    这是代码 IBAction charlieInputText id sender getting value from text field when entered charlieInputSelf sender stringValue
  • 随机生成具有偏爱低值分布的整数

    我有一个按某些质量函数排序的列表 我想从中获取元素 更喜欢列表开头的好元素 目前 我生成随机索引的函数基本上如下所示 def pick p 0 2 for i in itertools count if random random lt p
  • Ubuntu Apache2 本地虚拟主机 url 未找到

    我正在设置我的笔记本电脑 使用 Ubuntu 16 10 上的 LAMP 堆栈进行多个站点的单用户开发 并为不同站点提供虚拟主机和基于名称的虚拟主机 我尝试了各种配置设置组合 但无法从浏览器加载站点 我收到 在此服务器上找不到请求的 URL
  • Groovy 压缩列表或按级别展平

    我正在尝试压缩两个列表 我找到了一个解决方案 使用transpose 来自此链接 Groovy 中是否有 Scala zip 函数的类似物 https stackoverflow com questions 13879489 is ther
  • 如何对数组列表<>求和

    我有一个 List myList 其中我知道所有 int 数组的长度相同 为了便于论证 我们假设我有 500 个数组 每个数组有 2048 个元素长 我想对所有 500 个数组求和 得到一个长度为 2048 个元素的数组 其中每个元素是所有
  • 仅当编辑器处于焦点状态时才显示 TextAngular 工具栏(对于具有 1 个工具栏的多个编辑器)

    我有多个编辑器和一个工具栏 最初我只有一个编辑器 然后通过单击工具栏中的按钮添加第二个和第三个编辑器 工具栏位于第一个编辑器的顶部 随后添加的编辑器堆叠在另一个编辑器的下面 我遇到的问题是 当任何编辑器处于焦点状态时 如何显示工具栏 如何将
  • 动态生成灵活数量的嵌套 for 循环[重复]

    这个问题在这里已经有答案了 是否可以根据输入的长度添加 减少函数中嵌套 for 循环的数量 例如 基于长度为 3 的某个输入 我可能需要使用 1 个嵌套 for 循环 for 循环位于另一个 for 循环内 与此类似 for i in ra
  • ReSharper 的静态分析器似乎已损坏。我如何解决它?

    我对 ReSharper 给出的建议明显错误感到有疑问 例如 在以下代码示例中 ReSharper 表示response dates and ex当变量在以下几行中明确使用时 永远不会使用它们 Dim response As New Wcf
  • 仅在 Safari 上单击/悬停/聚焦时出现意外行为 - 圆形图片变为方形?

    我有奇怪的行为 圆形图片在桌面和移动设备上变成方形 这似乎只发生在 safari 上 并且只有当我添加 CSS 过渡时才会发生 这是网站 https shmoss github io Gibbs Lab people html https
  • C# 方法声明中的 new

    public new int AdjustedBaseValue 这里的新是什么意思或做什么 这意味着您正在隐藏 int 值 它是在基类中声明的 并且您在派生类中重新声明它 从而有效地隐藏了基类版本 查看文档here https learn
  • CSS 外部样式表不起作用,但完全相同的 CSS 在内部样式表上工作

    在制作个人网站时 我遇到了添加 CSS 样式表的问题 该样式表是本地样式表 在同一文件夹中具有 htm 文件 名为 Rodrigo css Here is the HTML Link tag with the CSS in the hrc
  • 绕过截断的“ps”

    我正在尝试编写一个脚本 该脚本将根据关键字查找特定进程 提取 PID 然后使用找到的 PID 杀死它 我在 Solaris 中遇到的问题是 由于 ps 结果被截断 基于关键字的搜索将无法工作 因为关键字是被截断的部分 过去 80 个字符 的
  • 如何检查函数是否已从控制台调用?

    我试图跟踪从控制台调用某些函数的次数 我的计划是在每个函数中添加一个简单的函数 例如 trackFunction 可以检查它们是从控制台调用还是作为底层函数调用 尽管这个问题听起来很简单 但由于我在函数编程方面的知识有限 我找不到解决这个问
  • git filter repo - 未找到 Python - 但已安装

    所以我第一次尝试使用 git filter repo 我已经安装了Python 3 9 我尝试运行 git filter repo strip blobs bigger than 100M 每次失败时 git 重击 git filter r
  • psexec 支持输入重定向吗?

    我试图通过 psexec 控制远程 Python 脚本 它从 stdin 读取命令 但我需要重定向 psexec 的输入 因为 psexec 本身将从另一个程序启动 但是 我没有运气让 psexec 接受重定向的输入 它应该起作用吗 我想做
  • lxml:将命名空间添加到输入文件

    我正在解析由外部生成的 xml 文件program http celldesigner org 然后 我想使用我自己的命名空间向该文件添加自定义注释 我的输入如下所示
  • iOS - Xcode 中的文件所有者和第一响应者是什么?

    iOS Xcode 中的文件所有者和第一响应者是什么 文件所有者是一个实例化的 runtime加载笔尖时拥有笔尖内容及其出口 操作的对象 它可以是您喜欢的任何类的实例 查看工具选项板的标识选项卡 文件所有者是应用程序代码和 nib 文件内容
  • 防止 Python 嵌入在我的默认路径 C:\Python38 中查找模块

    我正在使用 Cython embed模式来生成 exe 我正在评估分发嵌入 Cython 编译的代码并使其在任何机器上运行所需的最少文件集 https stackoverflow com questions 62390978 minimal
  • 如何使用“puts”添加额外的换行符而不将换行符粘贴到字符串中?

    If I say puts Hello 并决定添加一个额外的换行符 我需要这样做 puts Hello n 在字符串中包含这个字符是很难看的 有什么办法可以做到这一点而不污染我的字符串吗 只需再拨打一次电话即可puts puts Hello
  • 测量 Java 程序内存使用情况的最佳方法?

    我目前正在使用VisualVM 但我遇到的问题是我无法保存它生成的图表 我需要报告一些有关其内存使用情况和运行时间的数据 尽管运行时间很容易获得System nanoTime 我也尝试过NetBeans 分析器但这不是我想要的 因为我不是在