![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
V0fka |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 311 Регистрация: 5.11.2006 Где: Украина Репутация: нет Всего: нет |
Привет!
Хочу получить количество используемой оперативной памяти процессом(ами). Через Process.GetCurrentProcess().WorkingSet64 получаю память используемую текущим процессом. Полученное значение делю на 1024 и сравниваю с тем, что показывает диспетчер задач (колонка "Память (частный рабочий набор)"). У меня получается значение 70758400 / 1024 = 69100, а в диспетчере задач показывает 40420. Как получить то значение, которое показывает диспетчер? |
|||
|
||||
Fobos |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 105 Регистрация: 9.2.2008 Где: Москва Репутация: нет Всего: нет |
По памяти скажу так, получение такой информации из дотнета как-то усложнено и не обладает полным функционалом.
Кажется основные способы -
МОжете в эту сторону покопать. |
|||
|
||||
V0fka |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 311 Регистрация: 5.11.2006 Где: Украина Репутация: нет Всего: нет |
Попробовал через p/invoke.
Сама программа компилируется и работает как-то, но есть пара проблем. Память всеравно не совпадает. Причем в интернете вычитал (кстати, это на самом деле так?), что реальная память отображается в колонке диспетчера задач "Выделенная память", а я смотрел изначально в "Память (частный рабочий набор)". Но не совпадает не с тем, не с тем полем. Так же обнаружил, что GetProcessMemoryInfo не всегда возвращает true. Почему? Это сообщение отредактировал(а) V0fka - 6.9.2013, 15:14 |
|||
|
||||
V0fka |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 311 Регистрация: 5.11.2006 Где: Украина Репутация: нет Всего: нет |
Так, значение примерно совпадает с колонкой "Память". Причем WorkingSet64 возвращает именно это значение. Но вопросы остались такие:
1) Почему всетаки GetProcessMemoryInfo не всегда возвращает true 2) Почему в диспетчере задач пишет, что использовано 85% памяти, хотя из суммы по колонке "Память" - значение раза в полтора отличается от того, что говорит диспетчер задач. |
|||
|
||||
Fobos |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 105 Регистрация: 9.2.2008 Где: Москва Репутация: нет Всего: нет |
||||
|
||||
V0fka |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 311 Регистрация: 5.11.2006 Где: Украина Репутация: нет Всего: нет |
Fobos, по вопросу возвращения функцией false решил проблему с вашей помощью
![]() ![]() Вопрос 2 ещё актуальный, если что ![]() |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | .NET для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |