什么是 RMI TCP 连接

what is RMI TCP connection

我正在 java 中制作桌面应用程序并进行一些内存优化。这让我在 JVM 中遇到了两个线程 运行,都命名为:

RMI TCP 连接

而且它们都对堆增长做出了相当大的贡献(在我看来)

现在我知道的不多,但 TCP 对我来说听起来像是一些互联网的东西。根据我在 google 上设法找到的内容,它与互联网上的 serialization/deserialization 有关。

但是我的应用程序不需要互联网,所以我想知道两件事:

  1. 它们是什么以及它们在我的 JVM 中做什么?
  2. 我能以某种方式摆脱它们吗?

我的工具是"Java visualVM"。虽然我想到了两个线程是由于使用这个工具而产生的,在这种情况下我会觉得有点愚蠢。

RMI 是一个 Java API,它允许您在多台计算机上划分同一应用程序的各个部分的实现。 您在项目中使用 java.rmi 库吗?​​

线程用于将来自 JVM 的数据提供给远程 JMX 客户端(在您的情况下 Java VisualVM)。

断开连接后,线程不应再分配那么多数据。

要验证这一点,您可以转到“线程”选项卡并查看 RMI TCP 连接线程的线程转储。您应该看到 RMI 操作触发了 JMX bean。