Задать вопрос
@visirok
Заходите на мою страницу www.sirotin.eu

Параллельный запуск под Windows Java программ с использованием dll. Есть ли опасность использования в dll общих областей памяти?

Имеется Java программа вызываемая под Windows как javaw.exe. Внутри она загружает и использует несколько dll. Если мы запустим параллельно несколько инстанций этой программы, для каждой инстанции dll загрузятся независимо и будут использовать независимые области памяти?
  • Вопрос задан
  • 111 просмотров
Подписаться 3 Простой Комментировать
Решения вопроса 1
@res2001
Developer, ex-admin
Если процессы с загруженной dll разные, то вы не должны беспокоиться о памяти - она будет разная в разных процессах.
Но могут быть другие нюансы, например использование одного и того же порта для сокета или открытие глобальных именованных каналов с заданным именем и т.п. В этом случае либо второй и т.д. процессы будут вываливаться с ошибками, либо возможны разные трудно диагностируемые проблемы.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
EreminD
@EreminD
Кое-что умею
Это задача операционной системы - четко разграничивать области памяти для разных процессов.
В общем, если у вас там в dll - не Cи-шный код, котрый напрямую лезет в память - проблем быть не должно
Ответ написан
@visirok Автор вопроса
Заходите на мою страницу www.sirotin.eu
Спасибо.
Код написан на Си. Не весь доступен. К сожалению, мои познания по С давно не освежались. Существуют ли инструменты типа SysInternals, которые показывет использование памяти dll, которые загружаются из Java в среде Win7? Есть у Вас такой опыт?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы