Пустой рабочий набор из cmd

Я хочу написать сценарий cmd, чтобы периодически очищать рабочий набор из командной строки. Пока я очищаю рабочий набор в инструменте Rammap от sysinternals, но он не может быть запущен скриптом.

1 ответ

Решение

Вероятно, проще всего скомпилировать что-то вроде этого:

#include <iostream>
#include <windows.h>

int main(int argc, char **argv) { 
    if (argc != 2) {
        std::cerr << "Usage: min_mem <process_id>\n";
        return 1;
    }

    HANDLE process = OpenProcess(PROCESS_SET_QUOTA, false, atoi(argv[1]));
    SetProcessWorkingSetSize(process, -1, -1);
}

... а затем запустите его в вашем скрипте, что-то вроде:

mem_min 1234

... но заменяет 1234 с идентификатором процесса (в десятичном формате) процесса, память которого вы хотите минимизировать.

Тем не менее, я бы попросил, чтобы за этот ответ не проголосовали, так как это действительно довольно дурацкий ответ на вопрос, который в основном просто gimme the codez Я был достаточно слаб, чтобы опубликовать это, но предпочел бы не получать никаких повторений для этого.

Другие вопросы по тегам