Но есть более идельно или менее. Как я понял, скрипт создает нагрузку, и в вашем случае было бы не лишним ее регулировать. Лень разбираться в скрипте megaloman'а, но могу описать алгоритм:
1)простой: перед командой удаления нужно поставить проверку переменной - маркера загруженности. Допустим маркер=0 (перегруз) - ожидание, маркер=1 - выполнение. Под "ожиданием" я понимаю "бесконечный" цикл с паузой внури и прерывающийся по условию (маркеру загруженности). Маркер загруженности задает подпрограмма, которая запускается параллельно основному циклу и должна периодически проверять загруженность озу и цп и исходя из параметров менять маркер. Допустим рабоча память > 80% - маркер=0
2)более продвинутый: подпрограмма проверяет загруженность цп и озу и на основе этого увеличивает или уменьшает паузу которую основной цикл использует перед удалением..