Можно ли имитировать память, используемую процессом Perl, независимо от ОС? - PullRequest
2 голосов
/ 21 июля 2009

Существует ли независимый от ОС модуль Perl, который жестко ограничивает объем виртуальной памяти, которую может использовать процесс; например так что процесс будет убит, если он начнет израсходовать слишком много памяти?

Я вижу Apache :: SizeLimit , что, очевидно, специфично для Apache; и Process :: MaxSize , который требует от вас вызова функции проверки (а также имеет хакерский способ проверки размера процесса).

В прошлом я использовал ulimit, но он требует от вас (AFAIK) дополнительного процесса запуска, и это зависит от ОС.

Спасибо, Jon

1 Ответ

1 голос
/ 21 июля 2009

Я не думаю, что Perl может знать, является ли использование памяти реальным или виртуальным. Однако, если вы удалите реальные и виртуальные из ваших требований, вы можете просто ограничить использование используемой памяти.

Devel :: Size и Cache :: SizeAwareMemoryCache может приблизить вас немного, или BSD :: Resource * setrlimit.

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