Программно найти, сколько оперативной памяти доступно - PullRequest
3 голосов
/ 26 июня 2010

Существует ли переносимый способ, который работает как в .Net, так и в Mono в различных поддерживаемых операционных системах, для программы, позволяющей определить объем ОЗУ (т. Е. Физической, а не виртуальной памяти) в машине, на которой он работает?

Контекст - это программа, требования к памяти которой "как можно больше, пожалуйста"; ему нужно знать, сколько памяти должно быть выделено, при этом не останавливаясь перед заменой (тем самым останавливаясь и блокируя всю машину).

1 Ответ

3 голосов
/ 26 июня 2010

Нет портативного способа сделать это. Более того, система может интерпретировать «как можно больше» несколькими способами из-за сложности использования памяти. Например, система может предоставить вам почти всю оперативную память, просто переместив каждый запущенный процесс в своп.

P.S. использование swap - это не то же самое, что блокировка всей машины. Думайте об этом как о более медленном типе ОЗУ, доступном для использования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...