что такое соединение RMI TCP

Я делаю настольное приложение в java и делаю некоторые оптимизации памяти. Это заставило меня столкнуться с двумя потоками, запущенными в JVM, оба назвали:

Соединение RMI TCP

И они вносят значительный вклад в рост кучи (на мой взгляд)

Теперь я мало знаю, но TCP звучит для меня, как будто это интернет-магазин. Из того, что мне удалось найти в google, это как-то связано с сериализацией/десериализацией через Интернет.

Но моему приложению не нужен интернет, поэтому я хотел бы знать две вещи:

  1. что они и что они делают в моей JVM?
  2. Могу ли я как-то избавиться от них?

enter image description here

Мой инструмент был "Java visualVM". Хотя мне кажется, что эти два потока порождаются в результате использования этого инструмента, и в этом случае я буду чувствовать себя немного глупо.

Ответ 1

Потоки используются для подачи удаленного JMX-клиента (в вашем случае Java VisualVM) с данными из вашей JVM.

Как только вы отключите потоки, вы не должны выделять столько данных.

Чтобы убедиться в этом, вы можете перейти на вкладку "Темы" и посмотреть ниспадающий поток потока потоков RMI TCP Connection. Вы должны увидеть, что операции RMI запускают JMX-компоненты.

Ответ 2

RMI - это Java API, который позволяет разделить реализацию частей одного и того же приложения на нескольких компьютерах. Вы используете библиотеку java.rmi в своем проекте?