Кто-нибудь знает, можно ли изменить параметры JVM во время выполнения (например, -dname = value)? Мне нужен этот небольшой трюк, чтобы запустить хранимую процедуру Java (оракул 10g).Изменение параметров JVM во время выполнения
ответ
Предполагая, что вы имеете в виду системные свойства (-D ...; -d выбирает модель данных) System.setProperty (...) может делать то, что вы хотите.
Также имейте в виду, что некоторые свойства системы не будут иметь никакого эффекта, если они установлены во время выполнения. – jsight 2008-09-18 14:57:07
Вы можете установить свойства системы в хранимой процедуре Java, используя System.setProperty(). Но они будут доступны только для текущего сеанса Oracle.
Например, если вы подключаетесь к Oracle и запускаете хранимую процедуру Java, которая устанавливает свойства системы, а затем отключите от Oracle. Когда вы подключитесь к Oracle, системного свойства не будет. Каждый сеанс с Oracle имеет свою собственную псевдораздельную JVM (хотя все сеансы действительно имеют один JVM).
Если учетная запись, которую вы используете для сеанса Oracle, имеет достаточные права, вы можете запускать внешние команды операционной системы, включая отдельную внешнюю JVM.
Вы можете изменить системное свойство с помощью System.setProperty(), но независимо от того, действительно ли этот эффект влияет на это системное свойство. Некоторые свойства считываются статически, то есть во время загрузки класса, а другие могут кэшировать значение в каком-либо поле объекта.
Вы можете использовать класс OracleRuntime в своей хранимой процедуре Java.
int times = 2;
OracleRuntime.setMaxRunspaceSize(times *OracleRuntime.getMaxRunspaceSize());
OracleRuntime.setSessionGCThreshold(times *OracleRuntime.getSessionGCThreshold());
OracleRuntime.setNewspaceSize(times *OracleRuntime.getNewspaceSize());
OracleRuntime.setMaxMemorySize(times *OracleRuntime.getMaxMemorySize());
OracleRuntime.setJavaStackSize(times *OracleRuntime.getJavaStackSize());
OracleRuntime.setThreadStackSize(times *OracleRuntime.getThreadStackSize());
Этот пример кода умножается на 2 состояния памяти в oracle jvm. Примечание: import oracle.aurora.vm.OracleRuntime; будет разрешаться на oracle jvm, найденном на «aurora.zip»
- 1. Изменение параметров JVM JIT во время выполнения
- 2. Настройка параметров JVM во время выполнения
- 3. Изменение параметров псевдонима Firebird во время выполнения
- 4. Изменение формата параметров string.Format во время выполнения
- 5. Изменение параметров текстуры во время выполнения
- 6. Изменение Hashcode во время выполнения
- 7. Настройка размера кучи JVM во время выполнения
- 8. Получение памяти, доступной JVM во время выполнения
- 9. C# Изменение параметров резьбы во время выполнения потока - почему?
- 10. Изменение параметров принтера в отчетах во время выполнения
- 11. Изменение дополнительных параметров для treestore во время выполнения
- 12. Изменение значений параметров команд Guzzle во время выполнения через плагины?
- 13. Изменение параметров симуляции во время выполнения из потока кода/блока
- 14. Изменение параметров фонового изображения: url во время выполнения css
- 15. Apache Flink: изменение параметров состояния во время выполнения извне
- 16. Изменение параметров графика и данных во время выполнения
- 17. Изменение темы во время выполнения
- 18. Изменение appconfig во время выполнения
- 19. Изменение шрифта во время выполнения
- 20. изменение TOPMOST во время выполнения
- 21. Изменение анимации во время выполнения
- 22. Изменение MergedDictionaries во время выполнения
- 23. Изменение шрифта во время выполнения
- 24. Изменение ресурсов во время выполнения
- 25. Изменение переменной во время выполнения
- 26. Изменение app.config во время выполнения
- 27. Изменение LSApplicationQueriesSchemes во время выполнения
- 28. Изменение адаптера во время выполнения
- 29. Изменение persistence.xml во время выполнения
- 30. Изменение автоопределения во время выполнения
Вопросы, подобные этому, просят, чтобы просмотреть увеличенное изображение. Какова общая цель? Возможно, есть лучший путь .... – willCode4Beer 2008-09-18 17:45:04