hml
|
journeyman
|
|
|
|
Рег.: 15.09.2005
|
Сообщений: 69
|
|
Рейтинг: 0
|
|
java - another question about Process
28.05.2006 22:32
|
|
|
у меня ворос про Process.
создал один Process так,
Process proc=null; try{ proc = Runtime.getRuntime().exec("c:\\a.exe"); }catch(IOException e){}
вопрос состоит в том, что дописать программу чтобы выполнить следующие требования: 1)выводить объем памяти , который process 'a.exe' занимает при выполнении
спасибо.
|
|
shaller
|
San Jose
|
|
|
|
Рег.: 25.10.2002
|
Сообщений: 21640
|
Из: Станция 074803
|
Рейтинг: 15646
|
|
Re: java - another question about Process
[re: hml]
28.05.2006 23:33
|
|
|
угога
|
'Земля наша велика и обильна, а порядка в ней нет. Приходите княжить и владеть нами' |
|
hml
|
journeyman
|
|
|
|
Рег.: 15.09.2005
|
Сообщений: 69
|
|
Рейтинг: 0
|
|
Re: java - another question about Process
[re: shaller]
28.05.2006 23:46
|
|
|
|
Mike
|
Ызарг
|
|
|
|
Рег.: 02.11.2002
|
Сообщений: 8098
|
|
Рейтинг: 2147
|
|
Re: java - another question about Process
[re: hml]
29.05.2006 15:45
|
|
|
Quote:
выводить объем памяти , который process 'a.exe' занимает при выполнении
С ходу могу предложить только native код. Надо искать отцов java.
|
|
hml
|
journeyman
|
|
|
|
Рег.: 15.09.2005
|
Сообщений: 69
|
|
Рейтинг: 0
|
|
Re: java - another question about Process
[re: Mike]
29.05.2006 21:29
|
|
|
|
aset
|
boar
|
|
|
|
Рег.: 05.09.2003
|
Сообщений: 36470
|
|
Рейтинг: 6913
|
|
Re: java - another question about Process
[re: hml]
29.05.2006 21:53
|
|
|
Методом синтеза усложненного кода
|
may have come in contact with nuts |
|
hml
|
journeyman
|
|
|
|
Рег.: 15.09.2005
|
Сообщений: 69
|
|
Рейтинг: 0
|
|
Re: java - another question about Process
[re: aset]
30.05.2006 19:10
|
|
|
один предполагает решить эту проблем с помоьщю JNI
я не понял
почему использовать JNI ? затем
JNI просто разрешает java интерпритировать другие приложения и lib , написаные в других языках
как JNI решает эту проблему ?????????????
|
|
Mike
|
Ызарг
|
|
|
|
Рег.: 02.11.2002
|
Сообщений: 8098
|
|
Рейтинг: 2147
|
|
Re: java - another question about Process
[re: hml]
30.05.2006 21:10
|
|
|
Quote:
как JNI решает эту проблему ?????????????
Два ответа. JNI решает проблему не переносимо. JNI позволяет вызывать код на Си, в котором будет вызов, например, WinAPI, который позволит узнать количество памяти, отожранное процессом.
|
|
maxkar
|
enthusiast
|
|
|
|
Рег.: 19.10.2003
|
Сообщений: 291
|
|
Рейтинг: 15
|
|
Re: java - another question about Process
[re: hml]
30.05.2006 21:21
|
|
|
Правильно в принципе предложили использовать JNI. Java все-таки кроссплатформенная среда, поэтому в ней очень мало средств для взаимодействия со средой, а если такие средства появляются - то только при реальной необходимости. Тот же java.nio.* появился только в 1.4 (там есть отображения файлов в память, буфферы и т.п.) Ну а определение памяти, занятой другим процессом - задача достаточно специфическая и редкая (мало кому такая функциональность нужна).
В ответ на:
JNI просто разрешает java интерпритировать другие приложения и lib , написаные в других языках
Не позволяет. С одной стороны, JNI позволяет реализовывать методы классов в виде таких библиотек (при этом именуются вполне определенным способом), с другой - создавать виртуальную машину Java, создавать и вызывать методы классов. Произвольную библиотеку без создания обертки (wrapper) использовать нельзя. Предложение использовать native код от Mike и состояло в том, что надо создать класс с native-методом для получения необходимого объема памяти (кстати, память бывает разной ) после чего сгенирировать прототипы с помощью javah и реализовать необходимую библиотеку (*.dll, *.so), после чего загрузить библиотеку и использовать описанный метод класса (native-метод).
|
|
hml
|
journeyman
|
|
|
|
Рег.: 15.09.2005
|
Сообщений: 69
|
|
Рейтинг: 0
|
|
Re: java - another question about Process
[re: maxkar]
31.05.2006 16:11
|
|
|
почему не использовать
Runtime.freeMemory() Runtime.totalMemory()
|
|
Mike
|
Ызарг
|
|
|
|
Рег.: 02.11.2002
|
Сообщений: 8098
|
|
Рейтинг: 2147
|
|
Re: java - another question about Process
[re: hml]
31.05.2006 16:31
|
|
|
Quote:
почему не использовать
Потому что эти методы возвращают память текущей виртуальной java машины. Ты вообще документацию читать пробовал?
|
|