что такое соединение RMI TCP
Я делаю настольное приложение в java и делаю некоторые оптимизации памяти. Это заставило меня столкнуться с двумя потоками, запущенными в JVM, оба назвали:
Соединение RMI TCP
И они вносят значительный вклад в рост кучи (на мой взгляд)
Теперь я мало знаю, но TCP звучит для меня, как будто это интернет-магазин. Из того, что мне удалось найти в google, это как-то связано с сериализацией/десериализацией через Интернет.
Но моему приложению не нужен интернет, поэтому я хотел бы знать две вещи:
- что они и что они делают в моей JVM?
- Могу ли я как-то избавиться от них?
Мой инструмент был "Java visualVM". Хотя мне кажется, что эти два потока порождаются в результате использования этого инструмента, и в этом случае я буду чувствовать себя немного глупо.
Ответы
Ответ 1
Потоки используются для подачи удаленного JMX-клиента (в вашем случае Java VisualVM) с данными из вашей JVM.
Как только вы отключите потоки, вы не должны выделять столько данных.
Чтобы убедиться в этом, вы можете перейти на вкладку "Темы" и посмотреть ниспадающий поток потока потоков RMI TCP Connection. Вы должны увидеть, что операции RMI запускают JMX-компоненты.
Ответ 2
RMI - это Java API, который позволяет разделить реализацию частей одного и того же приложения на нескольких компьютерах. Вы используете библиотеку java.rmi в своем проекте?